ファイル読み込みの際のパス

フォーラム(掲示板)ルール
フォーラム(掲示板)ルールはこちら  ※コードを貼り付ける場合は [code][/code] で囲って下さい。詳しくはこちら
ミラクル

ファイル読み込みの際のパス

#1

投稿記事 by ミラクル » 16年前

すみませんタイトルがなかった。。。



ファイル読み込みの際に引数を受け取った時、
例えば
実行ファイルがsampleだとして
sample "テキストファイル"
のようにテキストファイルを引数にした場合
で下記のようなパスがつくとうまくいかなくて,
fp = fopen("/local/file","r"); のところを
fp = fopen(file,"r")にするとうまくいくんですけど
なにがわるいんでしょうか??


#define MN 256
int main(int argc,char **argv){

test(argv[1]);

}

int test(char val[MN]){

FILE *fp;
char file[MN];
strcpy(file,val);

fp = fopen("/local/file","r");

・・・・

}

ouh

Re:ファイル読み込みの際のパス

#2

投稿記事 by ouh » 16年前

fopen("//local//file", "r")
とすればいいと思います。

ouh

Re:ファイル読み込みの際のパス

#3

投稿記事 by ouh » 16年前

ごめんなさい。無視してください。
スラッシュとバックスラッシュを見間違えて...
恥ずかしい...

kazuoni

Re:ファイル読み込みの際のパス

#4

投稿記事 by kazuoni » 16年前

テキストファイルの位置の事ですかね。
mainのコードが書かれたところにテキストファイルが置いてあるのでそうなります。
もしmainのコードと同じところにlocalというファイルがあり、
その中にテキストファイルがあれば、
fp = fopen("/local/file","r");
で大丈夫です。
環境がわからないので何とも言えないですが、visual c++なら
fp = fopen("./local/file.txt","r")
ですかね。
環境によっては
/local/file
でいけるのでしょうか^^;まだ他の環境での知識が浅いもので・・・。

あ、雰囲気コマンドライン引数を使ってるようですけど・・・
これだと題意を満たさないような気がしますが。。

独り言でした。

kazuoni

Re:ファイル読み込みの際のパス

#5

投稿記事 by kazuoni » 16年前

ありゃ。下に無題で同じスレがありましたね^^;
すみませんでした。
しかも外れた回答・・・^^;
失礼しました。
これは削除されるのでしょうか?
管理人さんあとよろしくお願いしますw
(あ、無視で構いません。<ミラクルさん)

閉鎖

“C言語何でも質問掲示板” へ戻る