2013-02-21 104 views
-4

我想獲得文件類型,但我的文件注意到在C#,Asp.net中的擴展名。如何獲得沒有擴展名文件類型

我想從webClient.DownloadFile下載的文件中獲取文件類型。

可以跟蹤文件嗎?

能理解下載的文件是pdf還是不可以?

+0

請編輯您的問題,所以它更有意義 - 它太難以理解了片刻,我們需要了解它才能回答它。 – 2013-02-21 20:57:02

+0

我不知道你在這裏問什麼。你能舉一個完整的例子,詳細說明路徑和文件名嗎? – Oded 2013-02-21 20:57:24

+0

請清楚您的問題,以便獲得所需的幫助。 – 2013-02-21 21:13:17

回答

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)."; 
0

沒有絕對的方法來獲得沒有擴展名的文件的文件類型。

某些文件類型(例如EXE)具有可檢查的標題。其他文件,如文本文件,可能可以使用某種僅僅查找文本字符的啓發式方法進行檢測。但其他文件仍然不可識別。

0

只要事先知道擴展名就可以了,否則你必須熟悉文件的結構。如果您所做的只是下載PDF文件而不使用.pdf擴展名,請在下載文件時重命名文件[something] .pdf,並且您可以以普通PDF形式訪問它。

相關問題