2013-04-15 291 views
1

我试图从具有以下格式的文件中读取以下输入(逗号分隔)。但我不知道如何从文件中读取。我的理解是,这里是字符串格式。我将如何提取逗号分隔的[]中的每个数字?C中的文件读取和写入

File Input: **[1 2 3 4],[2 5 6]** 
     Output: 1 2 3 4 2 5 6 

如果您有任何想法或有关此任何教程一定会帮助我。

+3

通过字符串循环,跳过不是数字的任何东西,否则打印。 – 2013-04-15 18:52:50

+3

你一直在阅读一些C代码读取文件的代码示例,请尝试谷歌! –

+0

@ H2CO3:这意味着我将从文件中读取整行作为字符串。那么我会遵循你所说的话? – sabu

回答

3
#include <stdio.h> 
#include <ctype.h> 

int main() 
{ 
    FILE * pFile;  

    pFile = fopen ("myfile.txt" , "r"); 
    if (pFile == NULL) perror ("Error opening file"); 
    else { 

    while ((c = fgetc(pFile)) != EOF) 
    { 
     if(isdigit(c)) 
      printf("%c ",c); 
    } 
    fclose (pFile); 
    } 
    return 0; 
} 
+1

这应该是'fgetc()',不是吗?不过为了正确使用它+1。 – 2013-04-15 19:01:48

+0

@ H2CO3当然可以。谢谢 – zavg