一文字ずつ取り出して判別し、フラグで管理すれば、出来るかと思い、現在は一文字ずつ取り出すプログラムは作れたのですが、これを塊ごとで管理したいのですが、どうすればいいのかが分かりません。
取り出した、塊は比較して条件判断に使えるようにしたいと思っています。
ご教授願えないでしょうか?
=====出力結果====== あああabc -123456 fafa dfafa =================== =====ファイル名:test_1.txt====== [あああabc][-123456] [fafa] [dfafa] ===================================== =====ファイル名:web.c============= #include <stdio.h> #include <stdlib.h> #define READ_SET 3 #define READ_START 2 #define READ_END 1 void FileOpen(FILE *fin, FILE *fout); //ファイル関係の処理する所 int main() { FILE *fin, *fout; char ss[256], name[256]; printf("作成ファイル名を入力してください。"); scanf("%s", name); if( (fin = fopen("test_1.txt", "r")) == NULL ) { printf("ファイルが見つかりません。"); exit(1); //return ; でもいいのかな? } if( (fout = fopen(name, "w")) == NULL ) { printf("ファイルへの書き出しに失敗しました。"); exit(1); } FileOpen(fin, fout); //ファイル関係の処理する所 fclose(fin); fclose(fout); return 0; } void FileOpen(FILE *fin, FILE *fout) { int Read_1 = READ_END; //読み込み設定 int a; while ( feof(fin) == 0){ a = fgetc(fin); if(a != -1) //EOF(-1)がある時は無効化する為の【if】 { if( a == '[' ){ //読み込み開始 Read_1 = READ_SET; }else if( a == ']'){ //読み込み解除設定 fprintf(fout, "\n"); Read_1 = READ_END; } if( Read_1 == READ_START){ //書き出し fputc(a, fout); } if( Read_1 == READ_SET){ Read_1 = READ_START; } } } }