【问题标题】:Can one force XMLWriter to write elements in single quotes?可以强制 XMLWriter 在单引号中写入元素吗?
【发布时间】:2013-03-17 02:57:14
【问题描述】:

这是我的代码:

var ptFirstName = tboxFirstName.Text;
writer.WriteAttributeString("first",ptFirstName);

请注意,即使我使用

,ptFirstName 也会以双引号结尾
ptFirstName = ptFirstName.Replace("\"","'"); 

这也不起作用,因为作者仍​​然会在我的文件中强制使用双引号,如下所示:

事实上我需要(不要问我为什么——说来话长……)

【问题讨论】:

    标签: c# xmlwriter


    【解决方案1】:

    是的,您可以通过设置XmlTextWriter.QuoteChar 属性来设置引号使用的字符。详情请见http://msdn.microsoft.com/en-ca/library/system.xml.xmltextwriter.quotechar.aspx

    但这意味着您必须创建一个 XmlTextWriter 对象才能使其工作。

    【讨论】:

    • 好的,效果很好!使用 (XmlTextWriter writer = new XmlTextWriter(targetFile, System.Text.Encoding.UTF8)) { writer.QuoteChar = '\''; writer.Formatting = Formatting.Indented;
    • 这是不正确的,因为它只适用于将被弃用的XmlTextWriter 扩展而不是首选的XmlWriter
    • @yoshiya 你能参考一下使用XmlWriter 属性仅适用于XmlTextWriter 的详细信息吗?
    • 好的,我明白你现在在说什么了@Yoshiya XmlTextWriter 是唯一具有 QuoteChar 属性的类,并且 XmlWriter.Create 不会创建 XmlTextWriter 对象;所以你必须明确地使用 XmlTextWriter。
    • @james 您可以将XmlTextWriterXmlDocument 一起使用。此XmlDocument 读/写概述涉及QuoteChardocs.microsoft.com/en-us/dotnet/standard/data/xml/…,并有一个使用XmlTextWriterXmlDocument 的示例
    猜你喜欢
    • 1970-01-01
    • 2010-10-15
    • 2019-09-18
    • 2011-05-11
    • 2015-05-20
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多