【发布时间】:2018-05-11 09:49:17
【问题描述】:
我有一个 KVP,其中包含我想要在 XAttribute 中的数据,如下所示;
var kvpAttribute = new KeyValuePair<string,string>("rsaKey", @"----RSAKEY----
AWEACAWE123213AWEAWECAWE!AWEAWE
AWEAWEAWEAWEAWEQEAWEAWHYTAWEAAA
----END RSA KEY ----");
(删除的实际密钥)
我正在尝试将其写入 XML 文件。读取此 XML 的程序要求将密钥格式化为文件中的原样(在行之间使用 CR),当使用写入此密钥时;
var element = new XElement("Blah");
var attribute = new XAttribute("key", kvpAttribute.Key);
var attribute2 = new XAttribute("value", kvpAttribute.Value);
然后使用 XDocument.Save(FolderPath, FileName) 保存 XDocument 我在我的 XML 中得到输出;
<add value="----RSAKEY---
AWEACAWE123213AWEAWECAWE!AWEAWE
AWEAWEAWEAWEAWEQEAWEAWHYTAWEAAA
----END RSA KEY ----" key="rsaKey"/>
(再次删除实际密钥)
如您所见,CR 被替换为 CR/LF ( ; ;)。
有没有办法维护从 KVP 到 XML 文件本身的格式?
【问题讨论】:
-
您的第一段代码无法编译,因为它不是逐字字符串文字。如果它是一个逐字字符串文字,它可能有 CR,或者它可能有 CR/LF,具体取决于源文件格式,我们无法真正分辨。
-
@DaisyShipton 你说得对,对不起,我错过了,我会编辑我的问题。
标签: c#