C# 判断一个文件是不是媒体文件不通过后缀名
时间: 2023-08-02 19:18:47 浏览: 97
可以通过读取文件头信息来判断一个文件是不是媒体文件,而不是通过文件后缀名来判断。每种媒体文件都有特定的文件头信息,例如JPEG文件的文件头信息是 "FF D8 FF",MP3文件的文件头信息是 "49 44 33" 等等。可以通过读取文件头信息判断文件是哪种类型的媒体文件。以下是一个示例代码:
```csharp
public static bool IsMediaFile(string filePath)
{
bool isMediaFile = false;
byte[] header = new byte[3];
using (FileStream fs = new FileStream(filePath, FileMode.Open, FileAccess.Read))
{
fs.Read(header, 0, 3);
}
if (header[0] == 0xFF && header[1] == 0xD8 && header[2] == 0xFF) //JPEG文件头信息
{
isMediaFile = true;
}
else if (header[0] == 0x49 && header[1] == 0x44 && header[2] == 0x33) //MP3文件头信息
{
isMediaFile = true;
}
//添加其他媒体文件类型的判断
return isMediaFile;
}
```
该方法会读取文件的前三个字节作为文件头信息,然后判断是否符合媒体文件的文件头信息。需要注意的是,不同媒体文件的文件头信息可能不同,需要根据具体的需求添加相应的判断。
阅读全文