怎么判断TXT文件类型?

public static bool JudgeIsSpecialFormat(string sFileName)

     {

          bool   xx=false;     //default   sFileName   is   not   Exe   or   Dll   File 

          System.IO.FileStream fs = new   System.IO.FileStream(sFileName,System.IO.FileMode.Open,

              System.IO.FileAccess.Read);

          System.IO.BinaryReader r = new   System.IO.BinaryReader(fs);

          string bx = "";

          byte buffer;

          try

          {

              buffer = r.ReadByte();

              bx = buffer.ToString(); 

              buffer = r.ReadByte();

              bx += buffer.ToString(); 

          } 

          catch   (Exception   exc) 

          { 

              Console.WriteLine(exc.Message);

          }

          finally

          {

              if (r != null) r.Close(); 

              if (fs != null) fs.Close();

          }

          if   (bx == "7790" || bx == "8297" || bx == "8075")//7790:exe,8297:rar,8075:pk (zip)

          { 

              xx=true; 

          } 

          Console.WriteLine(bx); 

          return   xx;     

     }

I still have no idea about what the file header is. And when I applied this to check the files in one of my local folder, I found
    .css files: "xx" can be "4742" or "46110";
as it is shown, TXT files (.css) can have different values -- I must admit I editted one of the .css file with EditPlus, this might cause the differency -- so at present I still do not know how to judge whether a file is of TXT format, until I can list all the possible "xx" value for it.

More "xx" possible values of different files:
    .gif files: "7173"
    .ppt files: "208207"
    .log files: "4545"
    .txt files: "4545", "3232", "60104"
    .html files: "60104"
    .xml files: "6063"
    .xsd files: "6063"
    .xls files: "208207"
    .doc files: "208207"
    .msi files: "208207"
    .jpg files: "6677"
    .JPG files: "255216"
    .js files: "102117"
    .conf files: "3513"
    .jar files: "8075" -- so it can be opened by winzip?


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值