2011-12-30 4 views
5

でTXTファイルを読み込むには、ここではコードです:オープンと私はtxtファイルを開いて、そこから読みたいASP

StreamReader reader = File.OpenText("TrackData/vehicle_points.txt"); 

TrckDataは、私のWebアプリケーション内のフォルダです。 しかし、私はこのエラーを取得:

はパスの一部が見つかりませんでした 'Cを:\プログラムファイル(x86の)\ CommonのFiles \ Microsoft共有\ DevServer \ 10.0 \ TrackData \ vehicle_points.txt'。

私のプロジェクトはCドライバでさえありませんが、私はどこのURLを取得するのか分かりません。

答えて

8

ASP.Netアプリケーションは別のフォルダに保存されています。ここには、asp.net実行可能パスに応じて異なる相対性があります。

StreamReader reader = File.OpenText(AppDomain.CurrentDomain.BaseDirectory.ToString() + "TrackData/" +fileName); 
+0

うん、それはうまくいきました。 –

+0

あなたは大歓迎です.. @ rn-uera –

5

File.OpenTextはパスがカレントディレクトリであることを開始します - これは、実行ファイルがであるディレクトリですあなたはそれをファイルへの正しいフルパスを与える必要が

+0

別のコンピュータでプロジェクトを実行したいのですが? –

+1

@rNuǝɹɐ - まだ完全なパスを指定する必要があります。それをどうやって行うかはあなた次第です(設定、データベース、他の何かからルートパスを拾います)。 – Oded

2

...これは確かに動作します

string path = Server.MapPath("TrackData/vehicle_points.txt"); 
StreamReader reader = File.OpenText(path); 

を使用してください:

string path = Server.MapPath("filename.txt"); 
StreamReader rd = new StreamReader(path); 
0

を使用することができる最高の答えは一つです

+0

おそらく、この回答が既に受け入れられているものよりも優れている理由を説明するテキストを追加することができます。 'File'や' StreamReader'を使うことは違うので、実際に比較することはできません。 –

0
StreamReader sr = new StreamReader(Server.MapPath("~/TrackData/") + Textbox.Text); 

string read = sr.ReadLine(); 

if(read != null) 
{ 
    Response.Write(read); 
} 
else 
{ 
    Response.Write("nothing to display"); 
} 
+3

こんにちは、stackoverflowへようこそ!私はあなたの答えがどんな文脈もなくいくつかのコードを削除するのではなく、何がエラーであったのか説明を与えるなら、はるかに役に立つと思う。 [回答方法​​](https://stackoverflow.com/help/how-to-answer)を参照してください。 –

関連する問題