掲示板ランキング  かまぼこ(さつまあげ)  かまぼこ(はんぺん)  かまぼこ(笹かまぼこ)


掲示板利用宣言

 次のフォームをすべてチェックしてからご利用ください。

 私は

 題名と投稿者名は具体的に書きます。
 課題の丸投げはしません。
 ソースの添付は「HTML変換ツール」で字下げします。
 返信の引用は最小限にします。
 環境(OSとコンパイラ)や症状は具体的に詳しく書きます。
 返信の付いた投稿は削除しません。
 マルチポスト(多重投稿)はしません。

掲示板1

管理者用メニュー    ツリーに戻る    携帯用URL    ホームページ    記事検索    ログ    タグ一覧

No.6480

fopenのファイル名に変数を入れられますでしょうか?
投稿者---tana(2006/09/13 23:10:25)


フォルダ内にテキストファイルが沢山ありまして、その全てをforなどのループ文内でfopenを使って開きたいです。
テキストファイル名は数字で以下のようになってます。
1.txt
2.txt
3.txt
4.txt



以下プログラムです。
FILE *fin;
int i;
    
for(i=1; i<100 ;i++){
     if({fin=fopen("C\\temp\\i.txt", "r" ) ) == NULL ){
          printf( "入力ファイルがオープンできません\n" );
        exit( 1 );
     }
}

fopenでエラーになります。どのようにすればファイル銘に変数iをいれることができますでしょうか?
ご教授お願い致します。


この投稿にコメントする

削除パスワード

発言に関する情報 題名 投稿番号 投稿者名 投稿日時
<子記事> Re:fopenのファイル名に変数を入れられますでしょうか? 6481 Blue 2006/09/13 23:14:00


No.6481

Re:fopenのファイル名に変数を入れられますでしょうか?
投稿者---Blue(2006/09/13 23:14:00)


sprintfを使ってみてはどうでしょうか?
http://www9.plala.or.jp/sgwr-t/lib/sprintf.html


ちなみに、C言語では " で囲ってしまえはそれは単なる文字列にしかなりません。
変数名がいくらそこにあっても、その値にはなりませんので。


この投稿にコメントする

削除パスワード

No.6482

Re:fopenのファイル名に変数を入れられますでしょうか?
投稿者---tana(2006/09/14 00:01:48)


早々のご教授ありがとうございます。
以下のプログラムで動きそうです。
感謝致します。
FILE *fin;
int i;
char str[20];  

for(i=1; i<100 ;i++){
    sprintf(str,"%2d.txt",i);
    if({fin=fopen(str, "r" ) ) == NULL ){
        printf( "入力ファイルがオープンできません\n" );
        exit(1);
    }
}



この投稿にコメントする

削除パスワード

No.6483

Re:fopenのファイル名に変数を入れられますでしょうか?
投稿者---nano(2006/09/14 09:27:15)


>    sprintf(str,"%2d.txt",i);

iが1〜9のとき、ファイル名の先頭に1文字空白が入るため、
オープンに失敗しそうです。
"%d.txt"がよいのではないかと思います。



この投稿にコメントする

削除パスワード

No.6491

Re:fopenのファイル名に変数を入れられますでしょうか?
投稿者---tana(2006/09/14 22:19:26)


ご指摘ありがとうございます。
それでやってみます。


この投稿にコメントする

削除パスワード

管理者用メニュー    ツリーに戻る    携帯用URL    ホームページ    記事検索    ログ    タグ一覧





掲示板提供:(有)リアル・インテグリティ