如何获取无扩展文件类型

时间:2013-02-21 20:55:47

标签: c# asp.net

我想获取文件类型,但我的文件注意到C#,Asp.net中的扩展名。

我希望通过webClient.DownloadFile从下载的文件中获取文件类型。

可以跟踪文件吗?

可以理解下载的文件是pdf还是没有?

4 个答案:

答案 0 :(得分:0)

没有绝对的方法来获取没有扩展名的文件的文件类型。

某些文件类型(例如EXE)具有您可以检查的标头。其他文件(如文本文件)可能使用某种仅查找文本字符的启发式方法进行检测。但还有其他文件无法识别。

答案 1 :(得分:0)

只要你事先知道扩展名就可以了,否则你必须熟悉文件的结构。如果您所做的只是下载没有.pdf扩展名的pdf,请在下载时重命名您的文件[something] .pdf并且您将能够以常规pdf格式访问它。

答案 2 :(得分:0)

答案 3 :(得分:0)

    FileStream fs = new FileStream(@"c:\a.pdf", FileMode.Open, FileAccess.Read);
    StreamReader r = new StreamReader(fs);
    string pdfText = r.ReadToEnd();
    Regex rx1 = new Regex(@"/Type\s*/Page[^s]");
    MatchCollection matches = rx1.Matches(pdfText);
    MessageBox.Show("The PDF file has " + matches.Count.ToString() + " page(s).";