C# 为什么StreamWriter.Write会生成损坏的文件?
我有一个简单的代码将一些文本写入.docx文件C# 为什么StreamWriter.Write会生成损坏的文件?,c#,.net,file-io,ms-word,streamwriter,C#,.net,File Io,Ms Word,Streamwriter,我有一个简单的代码将一些文本写入.docx文件 using (FileStream fs = new FileStream(filepath, FileMode.Open)) using (StreamWriter sw = new StreamWriter(fs, Encoding.Unicode)) { sw.WriteLine("something"); } 这会写入文件,但当我尝试使用MsWord打开文件时,会出现错误 microsoft office无法打开此文件,因为缺少
using (FileStream fs = new FileStream(filepath, FileMode.Open))
using (StreamWriter sw = new StreamWriter(fs, Encoding.Unicode))
{
sw.WriteLine("something");
}
这会写入文件,但当我尝试使用MsWord打开文件时,会出现错误
microsoft office无法打开此文件,因为缺少某些部分
或无效
但是如果我尝试用写字板或记事本打开同一个文件,它会打开,并且文本写得正确。为什么会这样?.doc和.docx文件实际上不仅仅是纯文本文件。它们的文件格式相当复杂。因此,当您将纯文本放入一个文件并将其命名为
something.docx
,Word需要一个格式正确的Word文件
如果您想编写正确的docx文件,请参考以下问题:不确定您的问题是什么。。。Docx不是文本文件格式-所以在文件中需要其他数据的程序无法处理纯文本是合理的。请澄清您在寻找什么(即“如何使用文本创建docx文件”或“我应该为我的文本文件使用.txt扩展名”或其他内容)。哦。。我也这么怀疑,但我认为可能有一个更容易的方法来解决这个问题。谢谢你的及时回复!:)