我有一个我在C#脚本中编辑的xml文档。
这是擦......
我正在为.value中的Salesforce接口保存一条SQL语句。当您使用.save时,它会对字符串进行编码(> into& gt)。我不能拥有这个,因为Salesforce确实知道如何编码/解码所以它必须是我设置的特定字符串。没有编码保存文档的最佳方法是什么。我想我可以阅读xml doc并解析为文件流,当我到达它时编辑字符串但它看起来很麻烦....
答案 0 :(得分:1)
从技术上讲,XML是一个字符串。换句话说:一串人物。
标记的区别在于什么。您需要特殊字符以区别于其他字符。
三个字符绝对神圣不可侵犯:<,>和&
前两个构建标记,最后一个是转义字符,告诉读取实例:看,这是一个特殊字符!
如果您想在 XML中使用这些字符,则必须使用<
>
和&
转义它们。其余的取决于给定的编码。 UTF8处理的字符集不同于UTF16 - 还有更多......
这意味着:无法在 XML中编码/转义此类字符。
如果您只想处理XML 作为字符串,这非常简单:您的XmlDocument具有OuterXML
,这是string
返回属性。它将整个XML作为字符串传递。
但请记住,如果您在错误的位置使用未编码的特殊字符,那么您的XML将会中断...
实际上有一种方法(正如亚历山大·彼得罗夫所指出的那样:一个CDATA部分。问题是:接收者如何阅读您的数据?如果一切顺利正常方式,编码没有问题,因为任何读者都会在将数据显示给人类读者之前对其进行重新编码。