<Data>
<configs>
<someEntry>"value1"</someEntry>
</configs>
<profiles>
<someEntry>"value2"</someEntry>
</profiles>
</Data>es>
<someEntry>"value3"</someEntry>
</profiles>
</Data>
</Data>es>
是问题所在。
当我尝试删除&#34; value3&#34;此示例中的DataRow。 Visual Studio的DataTable Visualizer显示我的表很好,但DataSet以这种方式保存,尽管它是这样的:
<Data>
<configs>
<someEntry>"value1"</someEntry>
</configs>
<profiles>
<someEntry>"value2"</someEntry>
</profiles>
</Data>
在开始使用FileStream之前,一切都按预期工作。这就是我启动FileStream的方式:
FileStream filestream = new FileStream(xmlLocation, FileMode.Open, FileAccess.ReadWrite);
答案 0 :(得分:1)
您正在使用FileMode.Open
,如果该文件已存在,则不会截断该文件。
只需使用File.Create
:
using (var stream = File.Create(directory))
{
...
}
(你可以指定FileMode.Create
,就像你的帖子在你编辑它之前最初的那样,但我发现在几乎所有方法中调用File.*
简化方法要简单得多的情况。)