문제

Android에서 파일 유형을 결정하는 가장 좋은 방법은 무엇입니까?

주어진 파일이 이미지, 음악 파일 등인지 확인하고 싶습니다.

도움이 되었습니까?

해결책

  1. 일부 포함 mime.types 자산 폴더의 파일 (예 : /etc/mime.types).
  2. 포함 activation.jar (JAF에서) 빌드 경로에서.
  3. 다음과 같은 것을 사용하십시오.

    try {
        MimetypesFileTypeMap mftm = 
            new MimetypesFileTypeMap(getAssets().open("mime.types"));
        FileTypeMap.setDefaultFileTypeMap(mftm);
    } catch (FileNotFoundException e) {
        // TODO Auto-generated catch block
        e.printStackTrace();
    } catch (IOException e) {
        // TODO Auto-generated catch block
        e.printStackTrace();
    }
    
  4. 그런 다음 사용하십시오 FileDataSource.getContentType() 파일 유형을 얻습니다.

다른 팁

public static String getMimeType(String fileUrl) {
    String extension = MimeTypeMap.getFileExtensionFromUrl(fileUrl);
    final String mimeType = MimeTypeMap.getSingleton().getMimeTypeFromExtension(extension);
    return (mimeType !=  null) ? mimeType : "unknown";
}

일반적인 방법은 연장만으로 또는 헤더를 구문 분석 할 수 있지만 앱에 대해 너무 느리고 복잡해야합니다.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top