আমার 5 সেন্ট দিয়ে চিপ করতে:
টি এল, ডিআর
আমি মিমিটাইপসফাইলেটটাইপম্যাপ ব্যবহার করি এবং যে মাইম নেই সেগুলি যুক্ত করে এবং বিশেষত এটির প্রয়োজন হয় মাইম. টাইপস ফাইলে।
এবং এখন, দীর্ঘ পড়া:
প্রথমত, মাইম টাইমগুলির তালিকা বিশাল , এখানে দেখুন: https://www.iana.org/assignments/media-tyype/media-tyype.xhtml
আমি প্রথমে জেডিকে সরবরাহিত স্ট্যান্ডার্ড সুবিধাগুলি ব্যবহার করতে চাই এবং যদি এটি কাজ করে না, আমি গিয়ে অন্য কিছু সন্ধান করব।
ফাইল এক্সটেনশন থেকে ফাইলের ধরণ নির্ধারণ করুন
১.6 থেকে, জাভাতে মাইমাইটাইপস ফাইলটাইপম্যাপ রয়েছে, উপরের উত্তরের একটিতে উল্লিখিত হয়েছে, এবং এটি মাইমের ধরণ নির্ধারণ করার সবচেয়ে সহজ উপায়:
new MimetypesFileTypeMap().getContentType( fileName );
এর ভ্যানিলা বাস্তবায়নে এটি বেশি কিছু করে না (অর্থাত্ এটি .html এর জন্য কাজ করে তবে এটি .png ব্যবহার করে না)। তবে এটি আপনার প্রয়োজন হতে পারে এমন যে কোনও সামগ্রীর ধরণের যোগ করা অত্যন্ত সহজ:
- আপনার প্রকল্পের মেটা-আইএনএফ ফোল্ডারে 'মাইম.টাইপস' নামে ফাইল তৈরি করুন
- আপনার প্রয়োজন প্রতিটি মাইম টাইপের জন্য একটি লাইন যুক্ত করুন এবং ডিফল্ট বাস্তবায়ন সরবরাহ করে না (কয়েকশ মাইম প্রকার রয়েছে এবং সময়ের সাথে তালিকাগুলি বৃদ্ধি পাবে)।
পিএনজি এবং জেএস ফাইলগুলির জন্য উদাহরণগুলির উদাহরণগুলি হ'ল:
image/png png PNG
application/javascript js
মাইম.টাইপস ফাইল ফর্ম্যাটের জন্য আরও বিশদ এখানে দেখুন: https://docs.oracle.com/javase/7/docs/api/javax/ activation/MimetypesFileTypeMap.html
ফাইলের সামগ্রী থেকে ফাইলের ধরন নির্ধারণ করুন
1.7 সাল থেকে, জাভাতে java.nio.file.spi.FileTypeDetector রয়েছে , যা প্রয়োগের নির্দিষ্ট পদ্ধতিতে কোনও ফাইলের প্রকার নির্ধারণের জন্য একটি স্ট্যান্ডার্ড এপিআই সংজ্ঞায়িত করে ।
কোনও ফাইলের জন্য মাইম টাইপ আনার জন্য, আপনি কেবল ফাইলগুলি ব্যবহার করতে পারেন এবং এটি আপনার কোডে করুন:
Files.probeContentType(Paths.get("either file name or full path goes here"));
এপিআই সংজ্ঞা এমন সুবিধাগুলি সরবরাহ করে যা ফাইলের নাম থেকে ফাইলের মাইম টাইপ নির্ধারণের জন্য বা ফাইল সামগ্রী (যাদু বাইটস) সমর্থন করে। এজন্য প্রোব কনটেন্টটাইপ () পদ্ধতিটি আইওএক্সেপশন নিক্ষেপ করে, যদি এই API এর বাস্তবায়নের সাথে সম্পর্কিত ফাইলটিকে এর সাথে যুক্ত ফাইলটি খোলার চেষ্টা করে তবে এটি ব্যবহার করে।
আবার, এর ভ্যানিলা বাস্তবায়ন (জেডিকে সঙ্গে আসে এমন একটি) অনেকগুলি পছন্দসই হতে পারে।
কোনও ছায়াপথের অনেক দূরে, খুব দূরে, এই সমস্ত লাইব্রেরি যা এই ফাইল-টু-মাইম-টাইপ সমস্যার সমাধান করার চেষ্টা করে কেবল java.nio.file.spi.FileTypeDector প্রয়োগ করবে, আপনি পছন্দসই বাস্তবায়নকারী লাইব্রেরির জারে ফেলে যাবেন আপনার ক্লাসপথে ফাইল করুন এবং এটি হবে।
রিয়েল ওয়ার্ল্ডে, যেখানে আপনার টিএল, ডিআর সেকশন প্রয়োজন, আপনার নামের পাশে বেশিরভাগ তারকাগুলি সহ গ্রন্থাগারটি খুঁজে পাওয়া উচিত এবং এটি ব্যবহার করা উচিত। এই বিশেষ ক্ষেত্রে, আমার একটি প্রয়োজন নেই (এখনও;))।