-4

ファイルタイプを取得したいのですが、ファイルはC#、Asp.netの拡張子に注意しています。

ダウンロードしたファイルからファイルタイプを取得したいwebClient.DownloadFile

ファイルをトレースできますか?

ダウンロードしたファイルがPDFかどうかわかりますか?

4

4 に答える 4

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).";
于 2013-02-21T22:01:34.600 に答える
0

拡張子のないファイルのファイル タイプを取得する絶対的な方法はありません。

EXE などの一部のファイル タイプには、確認できるヘッダーがあります。テキスト ファイルなどの他のファイルは、テキスト文字のみを検索する何らかのヒューリスティックを使用して検出している可能性があります。しかし、それでも他のファイルは識別できません。

于 2013-02-21T20:59:01.500 に答える
0

事前に拡張子を知っていれば可能ですが、それ以外の場合は、ファイルの構造に精通している必要があります。.pdf 拡張子のない pdf をダウンロードするだけの場合は、ダウンロード時にファイルの名前を [something].pdf に変更すると、通常の pdf としてアクセスできるようになります。

于 2013-02-21T21:10:11.567 に答える