C言語関係掲示板

過去ログ

No.450.テキストファイルの特定文字の個数を数える

[戻る] [ホームページ]
No.3223

テキストファイルからの文字の判断
投稿者---東(2002/10/29 23:30:11)


はじめまして。東といいます。始めたばかりでよくわかっていないと思います。
下記のようなテキストファイルtest.txtを文字列ごとに取り出しての2,3,1...といった部分の数字の判断をし、2の数がいくつあるのかを表示させたいのですがうまくいきません。

test.txt
**********
00-2
01-3
02-1
03-2
04-1
...
**********

#include <stdio.h>
#include <stdlib.h>
#include <fcntl.h>
#include <io.h>

void main()
{
unsigned int i;
char buff[256],a;
FILE *fp;
fp=fopen("test.txt","r");
for(i=0;i<10000;i++)
{
a=fgets(buff,256,fp);
if (NULL==c)
{
break;
}
else
{
fseek(fp,3,SEEK_CUR);
}
}
fclose(fp);
}

途中でいろいろやっているのですがうまくいきません。
お教えいただければ幸いです。

No.3226

Re:テキストファイルからの文字の判断
投稿者---kamadoma(2002/10/29 23:46:16)


#include <stdio.h>
#include <stdlib.h>

#define IN_FILE "c:\\test.txt"

FILE *fileOpen(char *p_filename,char *p_mode);

int main(void)
{
        FILE *in_fp;
        char line[256];
        int cnt = 0;

        in_fp = fileOpen(IN_FILE,"r");

        while(fgets(line,256,in_fp) != NULL){
                if(line[3] == '2'){
                        cnt++;
                }
        }

        printf("2の個数は%d個でした\n",cnt);

        fclose(in_fp);

        return 0;
}

FILE *fileOpen(char *p_filename,char *p_mode)
{
        FILE *fp;

        fp = fopen(p_filename,p_mode);
        if(fp == NULL){
                fprintf(stderr,"ファイル[%s]を開けません。\n",p_filename);
                exit(1);
        }

        return fp;
}




No.3227

Re:テキストファイルからの文字の判断
投稿者---東(2002/10/30 00:16:21)


ありがとうございます。あとは理解できるようにがんばります!!