日期:2014-05-19  浏览次数:20807 次

如何在WIN FORM或命令控制台程序中查看一个文件的类型
相信用过WEB上传的朋友都知道,FileUpLoad类提供了一个查看要上传的文件类型的属性.平时肯定都遇到过:比如,我们把一个rm格式的文件改成了扩展名为rmvb.慢慢的我们就忘了它原来到底是什么格式的文件了.做一个查看文件真正类型的程序就OK了.WEB的太不方便了.在WIN   FORM   或命令控制台下是否有这样的类呢?知道的朋友帮个忙了.谢谢
特别声明:通过获取 ". "后的扩展名方法就免了,字符串查找我比谁都熟

------解决方案--------------------
//就是读取文件的头几个字节来判断
//先采样,然后就比较

FileStream vFileStream = new FileStream(@ "E:\加勒比海盗2A.rmvb ",
FileMode.Open, FileAccess.Read);
byte[] vBuffer = new byte[4];
vFileStream.Read(vBuffer, 0, vBuffer.Length);
if (vBuffer[0] == 0x2E && vBuffer[1] == 0x52 &&
vBuffer[2] == 0x4D && vBuffer[3] == 0x46)
{
MessageBox.Show( "rm/rmvb文件 ");
}
vFileStream.Close();