使用C在文本编辑器中创建文本

时间:2013-09-27 10:33:32

标签: c file

我想创建一个C程序,我要求用户编写一个文本,然后将该文本保存在文件中。

这是我尝试过的代码:

FILE* fichier = NULL;
fichier = fopen("filePath","a+");
printf("entrer le texte : ");
scanf("%s",txt);
fputs(nomFichier,txt);

问题是当用户想要创建一个回车符的文本时,编译器只读取第一次回车之前的文本。

首次创建文件时是否有任何方法,使用文本编辑器打开它,程序将等待用户关闭该文本编辑器。

1 个答案:

答案 0 :(得分:0)

您可以在程序中阅读多行文本输入,而不是打开文本编辑器(实际上很难独立地执行平台):

char txt[1024];
FILE* fichier = NULL;
fichier = fopen("filePath","a+");
printf("enter the text (end with an empty line): ");
while(!feof(stdin)) {
    fgets(txt, 1024, stdin);
    if(strlen(txt) == 0) break;
    fputs(txt, fichier);
}

这样,您的用户就可以输入带有cariiage返回值的文本,并且所有行都会保存到文本文件中。