繁体   English   中英

如何从文本文件中读取特殊字符?

[英]How to read special characters from a text file?

我有一个带有一些特殊字符( \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;
}

称之为 function:

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';
}

印刷线前。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM