我正在使用"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;
}
fprintf(fp,"Hello World");
fclose(fp);
}发布于 2013-07-19 15:12:59
仅使用扩展名(doc docx)并不能使文件成为MS word文件。你的代码只是在写一个文本文件。您可以在Linux下通过文件命令来检测此问题。
请参考此http://msdn.microsoft.com/en-us/library/cc313105(v=office.12).aspx,并编写REAL MS文档文件。
发布于 2013-07-19 14:59:51
doc文件不是简单的文本文件。您可能希望使用txt格式:
fopen("hello.txt", "w");要真正读/写doc文件,您需要使用专门为读取和写入它们而设计的库。
https://stackoverflow.com/questions/17739842
复制相似问题