您好。 我需要读取几个没有空格的文件或字符之间的空行。它们可以有不同的布局,例如1.txt,2.txt或3.txt:
的1.txt:
t
h
i
s
f
i
l
e
2.txt:
l
i
k
e
t
h
a
t
3.txt:
s o m e t h i n g
l i k e
t h a t
我该怎么做?我只需要以下代码:
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
int main(){
char c ;
FILE *fp;
fp = fopen("1.txt","r");
if(fp == NULL){
puts("Open file failed\n");
exit(-1);
}
while(fscanf(fp,"%c\n",&c)!=EOF){
/*do things with c var*/
}
fclose(fp);
exit(0);
}
答案 0 :(得分:0)
我认为你在询问如何阅读文本文件,忽略空格和空行。请澄清您的问题,以便我们能够更好地为您提供帮助。
这是让你入门的东西:
您可以阅读整个文件,然后删除任何您不想要的内容。以下帖子同意我的经验,您的应用程序可能会以这种方式运行得更快: Reading a file faster in C
如果您同意这种方法,下一篇文章将向您展示如何将文本文件读入缓冲区,并进行一些错误处理: Reading the whole text file into a char array in C
然后你可以使用这样的东西来删除空格,以及类似的额外新行: Function to remove spaces from string/char array in C
我希望这有助于您入门,也许今天有人会抽出时间为您发布一些代码。