• ベストアンサー

テキストの読み込み

数値が書き込まれている2つのテキストファイルを同時に読み込ませてループしていくのは どうしたら良いですか? x.txtが1行目を読み込んだら,y.txtも1行目を読み込むように行いたいです。

質問者が選んだベストアンサー

  • ベストアンサー
  • edomin7777
  • ベストアンサー率40% (711/1750)
回答No.1

言っている意味が良く判らないけど、 #include <stdio.h> #include <stdlib.h> int main(void) {  FILE *fx;  FILE *fy;  char sx[256];  char sy[256];  if ((fx = fopen("x.txt", "r")) == NULL) {   printf("file open error!!\n");   exit(EXIT_FAILURE);  }  if ((fy = fopen("y.txt", "r")) == NULL) {   printf("file open error!!\n");   exit(EXIT_FAILURE);  }  while (1) {   if (fgets(sx, 256, fx) == NULL) break;   if (fgets(sy, 256, fy) == NULL) break;     /* 読み込んだ後の処理 */  }  fclose(fx);  fclose(fy);  return 0; } みたいな感じ?

nanitukuruno
質問者

お礼

質問が不十分で申し訳ございません。 ですが、無事解決いたしました。 本当に有難うございます!

その他の回答 (1)

  • kmee
  • ベストアンサー率55% (1857/3366)
回答No.2

質問に書いてある通りにすればいいのでは? FILE *fpx = fopen("x.txt","r"); FILE *fpy = fopen("y.txt","r"); while(ファイル終了になるまで) { fgets(buffer_x, BUFSIZE, fpx); fgets(buffer_y, BUFSIZE, fpy); ..... } みたいな感じに。 上のコードは概略を示すためのものなので、このまま使わないように。

nanitukuruno
質問者

お礼

いろいろな方法があるのだとわかりました有難うございます!

関連するQ&A

  • visual basic6.0でのテキストファイルからの読み込みについて。

    vb初心者です。 数値をテキストファイルに保存しています。その数値は、x方向に10個、y方向に3個、つまり10列3行の数値を保存しています。 そのデータを2次元配列 D(x,y)として読み込みたいのです。 for x=0 to 9, for y=0 to 2 と範囲を指定して、数値全部を読み込むときは、D(x,y)の値は正しく入っているのですが、 ある範囲だけを読み込みたいとき、たとえば for x=0 to 5, for y=0 to 1 としたとき、D(x,y)は別の数値が読み込まれてしまいます。 これは、テキストファイルの数値が配列になっていないということですよね?? どうすれば、テキストファイルの数値を2次元配列として読み込むことができるのでしょうか? 文章が解りにくくてごめんなさい!!よろしくお願いします! 

  • テキストデータの読み込みについて

    C言語のテキストデータの読み込みについてです。 C言語のプログラムについてです。 2444,1114,2807, 1984,2845,2086, 658.1,-1564.0,1239.7, -102.0,958.4,123.1, 12.7,6.0,82.7 2439,1110,2802, 1973,2865,2108, 658.8,-1563.7,1239.6, -102.0,957.1,121.9, 12.8,6.0,82.7 2441,1106,2806, 1967,2888,2124, 659.4,-1563.5,1239.5, -102.2,956.4,121.0, 12.8,6.1,82.8 2440,1109,2808, 1964,2896,2127, 660.0,-1563.3,1239.4, -102.7,956.2,120.7, 12.8,6.1,82.8 2441,1112,2807, 1981,2894,2120, 660.6,-1563.0,1239.4, -103.3,956.2,120.1, 12.8,6.1,82.8                                       ↑ 上の様なカンマとスペースで15個に区切られているtxtファイルがあるのですが、このtxtデータの10コ目と11コ目をを計算で使いたく、取り出したいと考えているのですがscanfを使いどのように取り出すことが出来るのか、また取り出したデータから数値を引くことを教えて頂きたいです。 つまり -102.0   958.4 -102.0   957.1 -102.2 と 956.4 -102.7   956.2 -103.3   956.2,             を取り出して計算に使いたいです。 そして1番上の数値だと、 -102.0と958.4 を読み込み、例えばそれぞれ100を引いた値を配列に入れたいです。 -102.0と958.4 → -202.0 と 858.4 のように取り出したいです。 教えて頂きたいです。お願いします。

  • テキストファイルからの読み込みエラー

    app = getServletConfig().getServletContext(); fr =new FileReader(app.getRealPath("dbsplORA.txt")); br = new BufferedReader(fr); strPar = br.readLine(); br.close(); このような感じで、テキストファイルからの読み込みを行っていますが,なぜかいつもファイルが見つかりませんといわれます. ファイル自体はちゃんと名前も全半角あっています。 エラーメッセージに出ているものをコピーして貼り付けると動作します。 今回、Noを振り分け,ループしてたくさんのファイルを読み込もうと考えていますが,これのおかげで作成できません。 すみませんが、教えてもらえないでしょうか。 そして、今,仮ループで貼り付けて動かしていますが、最後らへんのテキストを読むとMalformedInputExceptionがでます。 ちなみに、ループで読み込みという意味は strBan = "dbsql"+strBan+".txt";//strBanはカウンターされている。 という意味です。よろしくお願いします。

    • ベストアンサー
    • Java
  • 外部テキストの読み込み

    外部テキストの読み込みについて質問です。 AS2.0で作成しています。 PHPのカウンタ機能を応用して、データを送信する毎に 1.txt、2.txt、3.txt…といったようなファイル名が付いたテキストを生成させています。 テキストデータにはそれぞれ座標が入っており、FLASH上に直線で表示させます。 とりあえず、最も新しい直線を表示させようと思い以下のようにASを書いてみました。 var col :Number = 0x000000; var a:Number = 0; Count = new LoadVars(); myLV = new LoadVars(); Count.load("http://●●/●●/counter.txt"); Count.onLoad=function(){ count = Count.cn myLV.load("http://●●/●●/+"count"+.txt"); } myLV.onLoad=function(){ lineStyle( 2, col); for (i = 0; i < myLV.pn(X座標の数); i++) { if(a != 0){ lineTo(myLV["x座標"+a],myLV["y座標"+a]); a++ } else { lineStyle( 2, col); moveTo(myLV["x座標"+a],myLV["y座標"+a]); a++ } } }; 動的なファイル名にアクセスさせる為にmyLV.load("http:~としてみましたが、 どうもこの部分がおかしいようです。 直接ファイル名を指定してやると、ちゃんと直線が表示されます。 今回教えていただきたいのは、 ・動的ファイル名の指定の仕方 ・最新の10件の直線を表示させる方法 ・「次へ」「前へ」ボタンを押すと、過去ログを10件づつ表示させたい ASはどのように記述すればいいでしょうか? ご教示お願い致します。

  • C++ ドラッグ&ドロップによるテキストデータ読込

    C++初心者です。 aaa.txtのデータ(数値がたくさん並んでいるもの)を読み込んである列の平均値を出すなど計算したいと思っています。 しかしaaa.txt以外にも計算したいテキストデータがたくさんあり、そのたびいちいちソースを弄ってテキストの名前を変えるのはおっくうです。 今は、次のようにファイルを読み込んでいます。 ifstream ifs("aaa.txt"); そこでexeファイルにドラッグ&ドロップしてそのテキストファイルの数値を勝手に読み込んでくれるように改変できるでしょうか?

  • 外部テキストの一行単位での読み込み

    flashでタイピングゲームを作成しています。 問題を外部テキストファイルから一行単位で読み込み、 それを配列に保存し、ランダムで出力するという仕様です。 外部テキストファイルの読み込み方、一行単位での配列への保存がわかりません。 外部テキストファイル名 elang.txt //////////中身////////////// FOOT HAND HEAD //////////////////////////// /////////読み込みソース////////////////// i = 0; //ループ変数 elangword = new Array(); //配列 ///////////////////////////////////////// 読み込みソースはここまでしかできていません。 問題出力ソースはできています。 外部テキストファイルの中身の変更、読み込みソースの 変更をしてもかまいませんので、どなたがご教授していただけたら幸いです。 どうかよろしく御願い致します。 補足 C言語の知識はある程度あります。 /////////開発環境///////////////// windows xp sp2 Flash Mx /////////////////////////////////

  • テキストファイルからの数値の読み込みについて

    C言語の初心者で、Microsoft Visual C++ 6.0 を使用しています。 テキストファイルから数値を読み込むことに関して質問です。 下記のプログラムでテキストファイルを読み込んだとき <正しい結果> -0.0266377 Press any key to continue と実行結果がなるはずですが、もとのファイルをコピーしたファイルから 読み込むと <誤った結果> -9.25596e+061 Press any key to continue となってしまいます。またエディターで適当な数値のテキストファイルを 作っても同様なトラブルが生じます。目下、Cのコンパイラしか無い 状況下でFortranのプログラムをCに変換しています。 下記のxをint,floatで定義した場合も異なった値を出力します。 エディターで、正しく読める元ファイルとコピーしたファイルの違いをしらべ ても、違いはありませんでした。  宜しくご教授のほど御願いします。 --------------------------- #include <iostream.h> #include <fstream.h> int main() { double x; ifstream fin("a:\data.txt"); fin >> x; cout << x << endl; fin.close(); return 0; } ----------------------------

  • ■VB■テキストから座標を得るには?

    分析データを解析したいです。そのデータは、テキストファイルとして、1行目から20行目までは、分析条件等の文字列が並び、それ以降の行には、強度としての数値が並びます (1行目~) #分析条件 (21行目~) 数値(整数) 21行目以降は、各座標(エネルギー)ごとの強度で、この各行を変数として取り扱うにはどうすればいいですか? まず、このデータをx(エネルギー)-Y(強度)図にプロットしたいのですが、、、

  • [C,C++]テキストファイルの読み込み

    はじめまして C++をはじめてまだ半年の初学者です。 テキストの読み込みについての質問なのですが、 以下のような形式(csv形式)のテキストのヘッダーと項目名を除く 数字の部分と文字の部分を読み込みたいのですが どのようにプログラムを書けばよいですか? ヘッダーと項目は不要です。 動物の名前とそのXYZは20個、日付は結構な数並んでいます。 時間と動物のデータは読み込み後、動物の種類ごとに構造体に格納します。 したがって、動物のデータはループで読み込めると良いのですが、 その方法が分かりません。 よろしくお願いします。 ************************** animal.txt by tanaka.tarou ************************** DATE, NAME, X, Y, Z, NAME, X, Y, Z, NAME, X, Y, Z, ・・・ 2011.05.23, rabit, 2, 5, 6, pig, 5, 3, 9, cow, 6, 3, 8, ・・・ 2011.05.23, rabit, 2, 5, 6, pig, 5, 3, 9, cow, 6, 3, 8, ・・・ 2011.05.23, rabit, 2, 5, 6, pig, 5, 3, 9, cow, 6, 3, 8, ・・・ 2011.05.23, rabit, 2, 5, 6, pig, 5, 3, 9, cow, 6, 3, 8, ・・・               ・               ・               ・

  • テキストファイルの読み込み

    http://www.ajaxtower.jp/ini/html/index1.htmlにあるサンプルで xmlHttp.open("GET", "http://www.ajaxtower.jp/sample/readfile.txt", true); の、ファイルの場所を変えたいのですが、とりあえず、同じフォルダ内のテキストファイルtest.txtにアクセスしようと、"./test.txt"に変えて、クリックしても何も表示されませんでした。 apacheを起動してhtdocsにtest.txtを入れて"files://localhost/test.txt"に入れてもダメでした。 xmlHttp.openが読めるtextファイルは、どういう状態である必要があるのでしょうか?

専門家に質問してみよう