我有一批文件(大约5000),本来在改动的时候改错了一个小地方,现在想把那些改错的改正,现在我用程序一次性去改,因为本来是二进制的文件在是不需要改的,但我的程序不能判别我现在打开的文件是不是二进制的,有没有什么方法可以判断该文件是二进制的,然后我就跳过就可以了

解决方案 »

  1.   

    读取文件的一部分,比如前50个字节,如果发现包含ascii码小于30的字符则判定为二进制文件。如果包含汉字那就不能这样做了。
      

  2.   

    同意: yefanqiu(叶帆) 
    文件保存到磁盘的时候都是二进制的
    要看你用什么方式去打开它
      

  3.   

    比如我用UE打开的时候,有些文件是直接显示为二进制的,有些例如文本文件就可以直接看到里面的内容,我现在就是想判断那些用UE打开直接显示是二进制的文件,我这个用扩展名不行的,用判断ASCII码也不行,还有没有其他方法阿,多谢了
      

  4.   

    判断文件中有没有非ASCII可显示字符
    ASCII 码小于30的都是控制字符,其中又不能包括vbCr与vbLf
    自己判断一下
      

  5.   

    判断非ASCII可显示字符好像不行,因为这些文件里都是有vbLf的,VB读取行的时候只是按vbCr来分的阿,我现在想做的就是想把那些用UE打开时自动显示为二进制的文件找出来,我刚开始的意思表达错了,不好意思,不过现在用其他方法已经搞定了,多谢各位了
      

  6.   

    保存自己文件时最好有个标志.象BMP,WAV等,都有它自己的一个标志的.