2012-04-02 10 views
-7

フォルダ内のすべてのファイルを読み込もうとしています。名前がindex.htmlの場合、何も起こりません。ブラウザでファイルを開くことさえできません。Cでファイルを開く#

これは私が使用するコードです。

foreach (System.IO.FileInfo thefile in fiArr) 
{ 
    if (thefile.Name == "index.html") 
    { 
     FileStream fileStream = new FileStream(path + thefile.Name, FileMode.Open, FileAccess.Read); 
    } 
} 
+2

は、どのようなブラウザ、あなたが話しているの?何かエラーがありますか?例外? – Oded

+0

ウェブサイトからindex.htmlがあるので、たとえばGoogle Chromeを意味します。 – Kiwimoisi

+0

私には例外がありません。それは何もしていないだけです。 – Kiwimoisi

答えて

2

このコードは、このファイルを指すFileStreamを作成します。つまり、ファイルを読み込んでその内容をメモリに取り込むことができます。しかし、それはどのブラウザでも開くことは期待できません。あなたはこのファイルタイプに関連付けられている既定のプログラムを使用してファイルを開くには、Process.Startメソッドを使用することができます。

foreach (System.IO.FileInfo thefile in fiArr) 
{ 
    if (thefile.Name == "index.html") 
    { 
     Process.Start(thefile.Name); 
    } 
} 
+0

ありがとう、これはすべて私が必要です。 – Kiwimoisi

+0

@Emged - あなたの質問は、asp.netというタグが付けられています。 Process.Startを呼び出すと、ホスト/サーバーマシン上のブラウザのみが開くことに注意してください。あなたが開発している間はこれはうまくいくかもしれませんが、一度展開すれば、誰かが見たことのないサーバー上でbroswerを開くことになります。 – Fishcake

0

あなたにそれを使用することができますので、あなたのコードがFileStreamにファイルの内容を入れていますコード。その次のFileStreamで何かする必要があります。あなたが望んでいた場合は、ファイルが(つまり、ブラウザに表示されて)デフォルトのアプリケーションはこれを使用使用して開か

System.Diagnostics.Process.Start(thefile); 
関連する問題