将文本写入C中的.txt文件

时间:2015-10-10 12:04:03

标签: c file text

我希望能够创建一个文件,然后将文本写入其中,但我不知道该怎么做。 这是我的一段代码:

FILE *note;
char name[100], *content;
printf("Write the name of your file.\n");
scanf("%s", &name);
note=fopen(name, "w");
printf("Write the content of your file\n");

接下来我该怎么做?

2 个答案:

答案 0 :(得分:0)

  
    

接下来我该怎么做?

  

好吧,你应该为content分配一些空间(尝试malloc()),然后将数据读入该空间(如果需要,可以realloc()增加空间)。

之后,您需要将内容写入文件。

最后用free()释放不再需要的空间。

答案 1 :(得分:0)

您需要使用malloc分配内存,读取输入并将其存储在已分配的内存中。然后将其写入您打开的文件,最后释放已分配的内存。

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

int main(void)
{
    FILE *note;

    char name[100], *content;

    content = (char*)malloc(1024);

    printf("Write the name of your file : ");

    scanf("%s",name);

    note = fopen(name, "w");

    printf("\nWrite the content of your file : ");

    scanf(" %[^\n]s",content);

    fprintf(note,"%s",content);

    printf("\nContent has been written to file!\n\n");

    free(content);

    fclose(note);

    return 0;
}