• 已解决 33241 个问题
  • 已帮助 5744 位优秀工程师

如何迅速确认sd卡上的一个文件类型

9604a3b72d92b876 2019-12-03 浏览量:305

如何迅速确认sd卡上的一个文件是二进制文件(比如可执行文件或者一个镜像文件)或者是一个文本文件(比如txt文档、html格式等)
0 0 收起

我来回答

上传资料:
选择文件 文件大小不超过15M(格式支持:doc、ppt、xls、pdf、zip、rar、txt)
最佳答案
  • 其实这个真的没有办法确定,因为我内容是纯文本字符流,我的扩展名也可以随便取为bin,我是二进制文件,我一样可以扩展名取为txt的。

    当然,如果有确定的符合内容的扩展名,是可以依据扩展名进行初步判断。

    其实一个方法就是先按纯字符串只读打开,检索是否有大量不可见字符,比如超过3个就判断是二进制文件啦。

    • 发布于 2019-12-04
    • 举报
    • 评论 2
    • 0
    • 0
9604a3b72d92b876 回复了 xdsnet:数字和英文的可以这么做,但还是没办法确认中文和特殊符号(比如笑脸)的,我本来试图用换行作为关键字,但发现居然有的文本居然不换行。。。 回复
xdsnet 回复了 xdsnet:特殊符号是可见字符,中文等都是可见字符啊,真正的不可见字符比如'\0'字符,主要就是值小于32的,且不等于9、10、13等值的来计数,正常文本文件中无论如何都不会有这些字符值的。几乎所有常见文本编码utf-8中也不会有这样的问题,麻烦的是Unicode、UTF-16、UTF-32,不过这些文件都有一个BOM标志,是在头部的,也可以用来辅助判断啦,即先判断是否有BOM(5种情况),如果有就是对应编码文本文件,否则,判断不可见字符数量为二进制,否则为文本文件。 回复

其他答案 数量:4
  • 查看文件后缀名,也就是遍历所有文件名,找到带.后面字符串判断就可以确认文件类型,二进制一般后缀是bin文件,镜像文件后缀为iso
    • 发布于2019-12-04
    • 举报
    • 评论 0
    • 0
    • 0

  • 文件的扩展名啊,不同的扩展名,就代表不同的文件类型的
    • 发布于2019-12-06
    • 举报
    • 评论 0
    • 0
    • 0

  • 这个一般都是通过识别文件的后缀名,通过后缀名来判断文件的类型
    • 发布于2020-01-12
    • 举报
    • 评论 0
    • 0
    • 0

  • 常用可行的办法就是读取文件的后缀名或者拓展名,用这个来识别
    • 发布于2020-01-15
    • 举报
    • 评论 0
    • 0
    • 0

如何迅速确认sd卡上的一个文件类型