';文件已损坏';在C中创建docx文件时打开docx文件
我正在使用“UNIX”(在我的虚拟机上)并在那里使用“C”生成“.docx”文件,在将该文件导入Windows后,当我打开该文件时,它会说“该文件已损坏,无法打开”,然后它就无法打开。 我正在使用MS Word 2010 下面是我正在使用的一段代码:-';文件已损坏';在C中创建docx文件时打开docx文件,c,C,我正在使用“UNIX”(在我的虚拟机上)并在那里使用“C”生成“.docx”文件,在将该文件导入Windows后,当我打开该文件时,它会说“该文件已损坏,无法打开”,然后它就无法打开。 我正在使用MS Word 2010 下面是我正在使用的一段代码:- Write_to_file(){ FILE *fp; if((fp=fopen("hello.docx","w"))==(FILE*)NULL){ printf("Error opening file"); return 0; }
Write_to_file(){
FILE *fp;
if((fp=fopen("hello.docx","w"))==(FILE*)NULL){
printf("Error opening file");
return 0;
}
fprintf(fp,"Hello World");
fclose(fp);
}
doc
文件不是简单的文本文件。您需要使用txt
格式:
fopen("hello.txt", "w");
要真正读/写doc
文件,您需要使用专门设计的库来读/写它们
doc文件不是简单的文本文件。您需要使用
txt
格式:
fopen("hello.txt", "w");
要真正读/写doc
文件,您需要使用专门设计的库来读/写它们
仅使用扩展名(doc docx)不会使文件成为MS word文件。您的代码只编写了一个文本文件。您可以在Linux下通过file命令来检测这个
请参考此文件,并编写REALMS文档文件。仅使用扩展名(doc docx)不会使该文件成为MS word文件。您的代码只编写了一个文本文件。您可以在Linux下通过file命令来检测这个
请参考此,并编写REALMS文档文件。您的代码错误
If
应为If
在记事本或gedit中打开文件!您创建的文件不是msword文件,它只有.doc扩展名。。。你太远了。文档文件是如此特殊,你必须深入!.doc
文件和.docx
文件都不是纯文本。.docx
格式(或者,至少是它的一个变体)是有文档记录的[警告:巨大得惊人的PDF,包含极其复杂的规范]。我不熟悉docx格式,但是你不能仅仅传递任何ascii字符串并添加扩展名.doc来创建文档文件。。另外@avinasse也不能仅仅通过在标题中使用不正确的禁用单词拼写来解决问题。由于特定原因,问题标题中禁止使用类似问题的词语。。你可以写一个更好的标题,只要避免这个词。你的代码是错误的If
应该是If
用记事本或gedit打开文件!您创建的文件不是msword文件,它只有.doc扩展名。。。你太远了。文档文件是如此特殊,你必须深入!.doc
文件和.docx
文件都不是纯文本。.docx
格式(或者,至少是它的一个变体)是有文档记录的[警告:巨大得惊人的PDF,包含极其复杂的规范]。我不熟悉docx格式,但是你不能仅仅传递任何ascii字符串并添加扩展名.doc来创建文档文件。。另外@avinasse也不能仅仅通过在标题中使用不正确的禁用单词拼写来解决问题。由于特定原因,问题标题中禁止使用类似问题的词语。。你可以写一个更好的标题,只要避开这个词。