我想獲得文件類型,但我的文件注意到在C#,Asp.net中的擴展名。如何獲得沒有擴展名文件類型
我想從webClient.DownloadFile
下載的文件中獲取文件類型。
可以跟蹤文件嗎?
能理解下載的文件是pdf還是不可以?
我想獲得文件類型,但我的文件注意到在C#,Asp.net中的擴展名。如何獲得沒有擴展名文件類型
我想從webClient.DownloadFile
下載的文件中獲取文件類型。
可以跟蹤文件嗎?
能理解下載的文件是pdf還是不可以?
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).";
沒有絕對的方法來獲得沒有擴展名的文件的文件類型。
某些文件類型(例如EXE)具有可檢查的標題。其他文件,如文本文件,可能可以使用某種僅僅查找文本字符的啓發式方法進行檢測。但其他文件仍然不可識別。
只要事先知道擴展名就可以了,否則你必須熟悉文件的結構。如果您所做的只是下載PDF文件而不使用.pdf擴展名,請在下載文件時重命名文件[something] .pdf,並且您可以以普通PDF形式訪問它。
有一些鏈接提出了同樣的問題。我希望它能幫助
https://superuser.com/questions/435224/how-do-i-find-out-the-file-type-without-an-extension
http://social.msdn.microsoft.com/Forums/en/csharpgeneral/thread/16c34850-8799-4a8b-8702-2f59d96e79c1
http://www.troublefixers.com/open-files-without-any-valid-file-extension/
http://bytes.com/topic/c-sharp/answers/812692-open-file-without-knowing-extension
請編輯您的問題,所以它更有意義 - 它太難以理解了片刻,我們需要了解它才能回答它。 – 2013-02-21 20:57:02
我不知道你在這裏問什麼。你能舉一個完整的例子,詳細說明路徑和文件名嗎? – Oded 2013-02-21 20:57:24
請清楚您的問題,以便獲得所需的幫助。 – 2013-02-21 21:13:17