如何判断一个文件是压缩的还是没有压缩的?
很可能zip,或者rar格式的。如果无法判断后者,只能判断出前者也可以

解决方案 »

  1.   

    ExtractFileExt(OpenPictureDialog1.FileName);//取文件后綴名
    假若返回是ZIP或者RAR就弹出消息“该文件已经被压缩”
      

  2.   

    ExtractFileExt(OpenPictureDialog1.FileName);//取文件后綴名 
    假若返回是ZIP或者RAR就弹出消息“该文件已经被压缩”
    同意
      

  3.   

    ExtractFileExt(OpenPictureDialog1.FileName);//取文件后綴名 
    假若返回是ZIP或者RAR就弹出消息“该文件已经被压缩”
    同意
      

  4.   

    完全是误人子弟!随便把个txt后缀名改为zip,你们也认为是压缩过的吗?楼主应该读取文件头的数据看看有没有完整的ZIP或者RAR格式标志。1. 读取ZIP:ZIP文件的前10个字节 为50 4B 03 04 14 00 02 00 08 00,用Hex编辑器打开看可以看到 PK 等字样,因为ZIP格式的作者是Phillip Katz,他用他名字的缩写作为ZIP Formatting Tag。2. 读取RAR:和ZIP一样,读取文件前20个字节,依次为 52 61 72 21 1A 07 00 CF 90 73 00 00 0D 00 00 00 00 00 00 00,用HEX编辑器打开可以看到类似Rar!这样的压缩标志。但请注意,有压缩标志的不见得就是有效的压缩文件,换句话说这个压缩文件可能被损坏(网络传输错误或者存储器效验错误),或者编辑过的,或者根本就是伪造的假标志。
      

  5.   

    如果要做的很好的吧 可能要用到文件类型识别 这样可以排除一些伪rar或是zip文件