- - PR -
MapPathの同階層のフォルダ内のファイルを参照する方法
1
投稿者 | 投稿内容 | ||||
---|---|---|---|---|---|
|
投稿日時: 2005-10-04 21:28
今現在、ASP.NET(C#)でソリューションを作成しています。
その場合、MapPathの同階層のディレクトリ配下のファイルを参照するにはどのようにしたら良いのでしょうか? 説明が難しいのですが、ソリューション内のあるプロジェクト内に1階層分フォルダがあって、一番最下層のフォルダ内のファイルから1つ上のフォルダと同階層のフォルダ配下のファイルを参照しようとしても参照できません。 FirstFolder----SampleAFolder | | ---SampleBFolder SampleAFolder内のcsファイルからSampleBFolder内のcsファイルを参照する方法です。 | ||||
|
投稿日時: 2005-10-05 10:53
こんにちは、でっちです。
※回答ではなくて申し訳ないのですが、 「ファイルを参照する」とは何をしたいのでしょうか? ファイルの内容を読み取ることでしょうか? ファイル一覧を取得することでしょうか? そこを明確にしないとレスはつかないと思います。 あと、「参照しようとしても参照できません。」と書かれていますが試されたことを先に書いておいて頂けると、回答する側も回り道せずに回答できますので、よろしくお願いします。 でもう一つ、インデントを使いたいときは、CODEタグを使えばずれません。
MapPathで相対パスの指定方法が分らないとかじゃないと思いますが… | ||||
|
投稿日時: 2005-10-05 22:09
.cs ファイルのある場所では実行されていません。bin ディレクトリ(コンパイルされた DLL があるところ)が CurrentDirectory です。 って、ことじゃないのかな? _____________________________________________________________________________ □ Posted by Jitta on 2005/10/05 □ じったのノート □ Microsoft MVP :Visual Developer ASP/ASP.NET Oct.2005-Sept.2006 _________________ | ||||
|
投稿日時: 2005-10-05 22:13
うお、なるほど!
勝手にASPX.CSだと勘違いしてました。猛省します。 Jittaさん流石です。 | ||||
|
投稿日時: 2005-10-06 18:38
外しました。。。
『MapPathで』ということなのですが、どのクラスの MapPath メソッド でしょう?MSDN のキーワード検索を使うと、6件出てきました。 "HttpRequest", "HttpServerUtility", "Page", "UserControl" のどれかだと思うのですが、微妙に“カレントディレクトリ”が異なります。 Page.MapPath を使えば、 aspx ファイルのある場所が“カレントディレクトリ”になるようですね。"UserControl" の方に、
と、書いてあることからの推測です。 その他のクラスについては“カレント”が明示されていませんが、クイックウオッチででも ???.MapPath(".") を検査させれば、カレントがどこか、わかるでしょう。 ___________________________________________________________________ □ written by Jitta on 2005/10/06 □ じったのノート □ Microsoft MVP :Visual Developer ASP/ASP.NET Oct.2004-Sept.2006 _________________ | ||||
|
投稿日時: 2005-10-11 21:51
すごい遅レスすみません。
あるフォルダ内のaspx.csファイルから同じ階層フォルダ内にあるテキストファイルを読み込みたいのですが、読み込むことが出来ていない状態です。 相対パスや絶対パスなどで試したのですが、駄目でした。 何か方法はあるのでしょうか? | ||||
|
投稿日時: 2005-10-11 22:35
こんばんは、でっちです。
あ、ASPX.CSで合ってましたか。 となると、HttpServerUtility.MapPathですよね? んー繰り返しになりますが、どの様に試して「読み込むことが出来ていない」状態なのでしょうか? 例外が発生しているなら、その情報なども載せて下さい。 簡単なコードですが、私の環境では以下の様なコードで問題なくSampleAFolderにあるASPX.CSから、SampleBFolderのTestFile.txtを読み込んで表示することができます。
可能であれば、試されたコードも提示してください。 [ メッセージ編集済み 編集者: でっち6号 編集日時 2005-10-11 22:36 ] |
1