पर एप्लिकेशन/ऑक्टेट-स्ट्रीम लौटा रहा है। मैं एंड्रॉइड डिवाइस पर संग्रहीत फ़ाइलों के माइम/मीडिया प्रकार को निर्धारित करने की कोशिश कर रहा हूं (वास्तव में एक वर्चुअल डिवाइस जिसे मैं एमुलेटर के साथ उपयोग कर रहा हूं)। मैं इस संसाधन Get the MIME Type from a File जो javax.activation.MimetypesFileTypeMap
की सिफारिश की नहीं मिला, हालांकि मैं सभी फ़ाइल प्रकारों के लिए application/octet-stream
मिलता है जब मैं निम्नलिखित कोड चलाएँ:जावा MimetypesFileTypeMap हमेशा एंड्रॉइड एमुलेटर
MimetypesFileTypeMap map = new MimetypesFileTypeMap();
File dir = Environment.getExternalStorageDirectory();
File[] files = dir.listFiles();
String mimeType;
for(int i = 0; i < files.length; ++i) {
if(files[i].isDirectory() == false) {
mimeType = map.getContentType(files[i]);
if(mimeType.toLowerCase().equals("application/octet-stream")) {
Log.d("mytag",
String.format("Unable to determine the mime type of file %s.",
files[i].getName()));
}
}
}
मैं निम्नलिखित विस्तार होने फाइलों के साथ इस परीक्षण किया है: जेपीजी, txt, डॉक्टर, xslx और पीडीएफ और वे सभी एक ही चीज़ लौटते हैं। क्या नक्शा आरंभ करने के लिए मुझे कुछ करना है? क्या इस पुस्तकालय को Android पर समर्थित माइम-प्रकार की सूची नहीं मिल सकती है? क्या Android पर फ़ाइल के माइम प्रकार को प्राप्त करने का कोई बेहतर तरीका है?
मैं एक ही समस्या (एंड्रॉयड शामिल नहीं है), इस लिंक को देखने आ रही हैं http://stackoverflow.com/questions/ 6308142/add-mimetypes-to-mimetypesfiletypemap। मुझे लगता है कि हमें माइम प्रकारों की पूरी सूची के साथ एक पुनरावृत्ति फ़ाइल जोड़ने की आवश्यकता है, फिर भी कोशिश नहीं की गई है हालांकि –