我有一个带有某些特殊字符(\n
,\t
等)的文本文件。问题是:是否仍然要打印换行或制表符而不是只打印字符串\n
或\t
?
int main(){
char line[10];
FILE*file= fopen("file.txt", "r"); // txt content => "line 1 \n line 2 \n line 3"
if (file != NULL){
while (fgets(line, 10, file) != NULL)
printf("%s", line);
}
return 0;
}
答案 0 :(得分:-1)
调用此函数:
void cleanUp(char * line) {
int x;
int y = 0;
for (x = 0; x < strlen(line) - 1; x++) {
if (line[x] == '\\') {
if (line[x + 1] == 'n') {
line[y++] = '\n';
x = x + 2; /* if there is always a space after the \n otherwise x++ */
continue;
}
if (line[x + 1] == 't') {
line[y++] = '\t';
x = x + 2; /* if there is always a space after the \t otherwise x++ */
continue;
}
}
line[y++] = line[x];
}
line[y++] = '\n';
line[y] = '\0';
}
在打印行之前。