gpt4 book ai didi

c# - ResXResourceWriter 截断文件末尾

转载 作者:行者123 更新时间:2023-11-30 22:45:39 25 4
gpt4 key购买 nike

我正在尝试从字符串字典创建一个 .resx 文件。幸运的是,.Net 框架有一个 ResXResourceWriter 类。唯一的问题是,当我使用下面的代码创建文件时,我生成的 resx 文件的最后几行丢失了。我检查了我的词典,它包含我期望的所有字符串对。

public void ExportToResx(Dictionary<string,string> resourceDictionary, string fileName)
{
var writer = new ResXResourceWriter(fileName);

foreach (var resource in resourceDictionary)
{
writer.AddResource(resource.Key, resource.Value);
}
}

不幸的是,显示整个 resx 文件有点困难,因为它有 2198(应该有 2222)行,但这是最后一点:

...
2195 <data name="LangAlign_ReportIssue" xml:space="preserve">
2196 <value>Report an Issue</value>
2197 </data>
2198 <data name="LangAlign_Return

顺便说一句,请注意文件在“LangAlign_Return”中的“n”结尾处被截断。该字符串应显示为“LangAlign_ReturnToWorkspace”。该文件还应在第 2222 行结束。

最佳答案

试试这个:

public void ExportToResx(Dictionary<string,string> resourceDictionary, string fileName)
{
using(var writer = new ResXResourceWriter(fileName))
{
foreach (var resource in resourceDictionary)
{
writer.AddResource(resource.Key, resource.Value);
}
}
}

您需要对编写器调用 Dispose()。 :)

关于c# - ResXResourceWriter 截断文件末尾,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2952810/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com