Как добавить новую строку в текстовый файл? - PullRequest
3 голосов
/ 25 августа 2011

У меня есть несколько строк кода:

strcat(myTxt,"data");
strcat(myTxt,"\n");
strcat(myTxt,"data1");

Между строк, которые я сделал strcat из "\n";однако, когда я делаю запись в текстовый файл, "\n" игнорируется, и все строки объединяются как datadata1.Как я могу обойти эту проблему?

Ответы [ 2 ]

6 голосов
/ 25 августа 2011

Этот код работает для меня:

#include <string.h>
#include <stdio.h>

int main ()
{
    char myTxt[100];

    myTxt[0] = 0;
    strcat(myTxt, "data");
    strcat(myTxt, "\n");
    strcat(myTxt, "data1");

    printf("%s\n", myTxt);
    return 0;
}

Вы инициализировали первый байт буфера?Редактировать: работает также с файлом в качестве вывода:

#include <string.h>
#include <stdio.h>

int main ()
{
    char myTxt[100];
    FILE *out = fopen("out.txt", "wt");

    myTxt[0] = 0;
    strcat(myTxt, "data");
    strcat(myTxt, "\n");
    strcat(myTxt, "data1");

    fprintf(out, "%s\n", myTxt);
    fclose(out);
    return 0;
}
0 голосов
/ 25 августа 2011

Для вывода файла вы должны сделать strcat из "\r\n"

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...