ファイル関数を使ってoutput.txt(txtファイル)の文字を配列に格納するプログラムを作っているのですが、配列に文字を入れられない状態です。
※参考になるページやアドバイスがあれば宜しくお願い致します。
■プログラム
#include <stdio.h>
void main(){
int i;
int data[10];
FILE *fp;
fp = fopen("output.txt","r");
if(fp == NULL){
printf("ファイルが見つかりません。");
}else{
for(i=0;fp != EOF;i++){
data[i] = fgetc( fp );
}
}
}
■output.txt
001 100 猫A 好きな物 ねこまんま
002 200 猫B 好きな物 キャットフード
No.3ベストアンサー
- 回答日時:
これで、やりたいこと、できませんかね?
++++++++++++++++++++++
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
int main(void){
int i = 0, j = 0;
char temp, data[10][100];
FILE *fp;
fp = fopen("output.txt","r");
/* 初期化 */
memset(data, 0, sizeof(data));
if(fp == NULL){
printf("Cannot find file");
}else{
while((temp = fgetc(fp)) != EOF){
if (temp == ' ' || temp == '\n') {
data[i][j] = '\n';
i++;
j = 0;
} else {
data[i][j] = temp;
j++;
}
}
for (i = 0; i < 10; i++) {
printf("[%d] Output : %s \n", i, data[i]);
}
fclose(fp);
}
return 0;
}
++++++++++++++++++++++
No.2
- 回答日時:
fgetcで1文字(1バイト)づつ取得して、data配列に格納してますよ。
文字列のバイト数と配列のサイズが合わないし、int型じゃなくchar型の方が効率的だし、なにをしたいんでしょうか?
回答ありがとうございます。
確かにchar型の方がint型より効率的ですね・・。
勉強不足でした。
再度その点をもう一度考えています。
No.1
- 回答日時:
>001 100 猫A 好きな物 ねこまんま
>002 200 猫B 好きな物 キャットフード
この入力データを、
>int data[10];
この出力領域にどんな風に格納したいのでしょうか?
data[0]~data[9]がどうなることをお望みであるか、教えてください。
回答ありがとうございます。
1つ1つの配列に以下のように入れたかったです。
data[0]=001 data[1]=100 data[2]=猫A data[3]=好きな物
data[4]=ねこまんま data[5]=002 data[6]=200 data[7]=猫B
data[8]=好きな物 data[9]=キャットフード
もう一度配列から勉強しなおして見ます。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- C言語・C++・C# プログラミングの授業の課題です 1 2023/01/17 22:15
- C言語・C++・C# このプログラミング誰か教えてくれませんか 1 2022/06/02 15:27
- Excel(エクセル) Excelにて、フォルダ内のTextファイルをマクロで統合すると文字化けしてしまう時の解消コード 4 2023/01/01 07:32
- C言語・C++・C# c言語の問題の説明、各所ごとに 5 2023/07/26 11:03
- Visual Basic(VBA) エクセルのマクロについて教えてください。 4 2023/02/05 09:55
- C言語・C++・C# c言語 プログラムのエラー 1 2023/02/11 20:31
- C言語・C++・C# c言語の問題です 課題1 (二分探索木とセット) 大きさ size の配列 array を考える。す 2 2023/01/10 21:08
- Excel(エクセル) 【VBA】指定フォルダに格納中のテキストファイルをエクセルで処理し結果のエクセルを新規フォルダに保存 1 2022/03/25 14:19
- C言語・C++・C# 10個の実数に対する降順ソート結果を出力するプログラムを作りたいのですが、以下のプログラムをどう直せ 1 2022/07/09 22:16
- C言語・C++・C# C言語の課題が出たのですが自力でやっても分かりませんでした。 要素数がnであるint型の配列v2の並 3 2022/11/19 17:41
このQ&Aを見た人はこんなQ&Aも見ています
関連するカテゴリからQ&Aを探す
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
c言語でのfscanfについて
-
ファイルからCR/LFを除去したい
-
C言語におけるファイル読み込み...
-
エラーがわかりません、、
-
C言語 csv 配列
-
C言語でセグメンテーションエ...
-
セグメンテーションエラーです
-
fscanfでループしてしまう。
-
クリップボードから画像取得
-
テキストファイルをバイナリフ...
-
C言語 コンソール VC6.0で
-
ファイル名の変化
-
構造体のリスト
-
main関数の中をスッキリさせたくて
-
ファイルに行番号を追加
-
テキストファイルを読み込み、C...
-
Winsockの通信処理にてファイル...
-
乱数とファイルの入出力の質問...
-
c言語 ファイルから数字を読み...
-
凸包!
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
ガンマ変換 C言語でプログラ...
-
c言語でのfscanfについて
-
なぜCSQとCIP形式ではコ...
-
複数ファイルの同時読み込みの...
-
fopenでファイル名に、変数を使...
-
ファイル出力で改行を入れたい!
-
ファイルへの書込み処理が異常...
-
【C言語】ファイルを読み込んで...
-
エラーがわかりません、、
-
C言語でセグメンテーションエ...
-
C言語でファイル読み書きを早く...
-
テキストファイル内に対して, ...
-
fgets( ) の返り値は何?
-
ファイルに行番号を追加
-
OpenGLによる描画内容をBMP出力
-
c言語 ファイルから数字を読み...
-
fscanfでループしてしまう。
-
ファイルが読み込めない・・・
-
CRC32の計算方法
-
C言語でのCSVソートとデータ抽...
おすすめ情報