天道酬勤,学无止境

xmltextwriter

我想编辑xml文件(I want to edit xml file)

问题 我已经修改了 d xml 文件的结构。 我想编辑可见值 回答1 您可以使用这样的代码模式: bool foobar() { XmlDocument doc = new XmlDocument(); try { doc.Load(FileName); XmlNodeList ns = doc.SelectNodes("a/d/e/f"); if (ns.Count == 1) { ns[0].Attributes["visible"].Value = true; doc.Save(FileName); return (true); } else return (false); } catch (Exception e) { return (false); } } 回答2 嗯,LINQ to XML 使得操作 XML 文档变得非常容易,假设它们足够小,可以合理地加载到内存中。 例如: var doc = XDocument.Load("Foo.xml"); foreach (var element in doc.Descendants("c")) { element.SetAttributeValue("value", "bb"); } doc.Save("Bar.xml"); 现在将为每个c元素设置value属性。 目前尚不清楚这是否是您想要的。 如果不是

2021-10-09 11:13:19    分类:技术分享    c#   asp.net   xml   xmlreader   xmltextwriter

如何防止 & 转换为 & 使用 XmlTextWriter?(How to Prevent the conversion of & to & using XmlTextWriter?)

问题 文本中的“&”被转义并转换为&amp; 使用 XmlTextWriter 创建 xml 文件但我不希望发生转换时如何防止它? 除了使用 xmltextwriter 的 WriteRaw func 之外还有其他方法吗? 回答1 如果在 XML 中放置一个未转义的 & 符号,它就不再是有效的 XML。 您的两个选择是逃避它(您的图书馆正在这样做): <tag>One &amp; another</tag> 或将其包装在 CDATA 中: <tag><![CDATA[One & another]]></tag> 可以通过以下方式完成: xmlWriter.WriteCData("One & another"); 回答2 你为什么不希望这发生? 在我看来,该库正在按照 XML 的要求强制执行正确的字符转义。 回答3 我不确定它是否会起作用,但您可能想要检查通过 xmltextwriter.Settings 可用的 XmlWriterSettings 属性,尤其是 CheckCharacters 属性。 另一方面,正如 Brian Agnew 所提到的,不将 & 编码为 & 可能是错误的方法,因为它会使您的 XML 无效(除非您已经将其编码为 & 在这种情况下您可能只想在提供它之前对其进行解码到 xmltextwriter 类。

2021-08-30 01:23:36    分类:技术分享    c#   xml   vb.net   escaping   xmltextwriter

How to Prevent the conversion of & to & using XmlTextWriter?

The '&' in the text gets escaped and gets converted to &amp; when creating the xml file using XmlTextWriter but i dont want the conversion to take place how to prevent it? Is there any other way besides using WriteRaw func of xmltextwriter?

2021-07-29 11:20:15    分类:问答    c#   xml   vb.net   escaping   xmltextwriter

I want to edit xml file

I have modified the structure of d xml file. i want to edit value of visible

2021-07-03 16:01:35    分类:问答    c#   asp.net   xml   xmlreader   xmltextwriter

将 XML 插入 SQL Server 2008 数据库(INSERT XML into SQL Server 2008 database)

问题 您好,我正在尝试将一些 XML 数据插入 SQL Server 2008 上的表中。但是我一直被抛出这个错误; XML解析:第1行,第39个字符,无法切换编码 数据库列 filemeta 使用 XML 数据类型,我已将编码切换为 UTF-16,我认为这是添加 XML 数据所必需的。 INSERT INTO testfiles (filename, filemeta) VALUES ('test.mp3', '<?xml version="1.0" encoding="utf-16" standalone="yes"?><!--This is a test XML file--><filemeta filetype="Audio"><Comments /><AlbumTitle /><TrackNumber /><ArtistName /><Year /><Genre /><TrackTitle /></filemeta>'); 帮助,我被卡住了。 注意:我使用 XMLTextWriter 创建了 XML。 回答1 是的,当您尝试将 XML 插入 SQL Server 2008 并且 XML 包含编码指令行时会出现问题。 我通常绕过使用CONVERT函数,它允许我指示 SQL Server 跳过这些指令 - 使用如下所示: INSERT INTO testfiles

2021-06-24 00:13:27    分类:技术分享    sql   sql-server   xml   xmltextwriter

如何使用 CR 生成 XML,而不是 XmlTextWriter 中的 CRLF(How can I generate XML with CR, instead of CRLF in XmlTextWriter)

问题 我正在通过 XmlTextWriter 生成 XML。 该文件在我看来不错,经过验证(在 wc3 处),并被客户端接受。 但是客户供应商抱怨行结尾是 CRLF,而不仅仅是 CR。 好吧,我在使用 C# 的 Win32 机器上,而 CRLF 是 Win32 标准行尾。 有没有办法更改 XmlTextWriter 中的行尾? 另外——行尾对正确的 XML 解析器来说不应该无关紧要吗? 另请参阅:什么是回车、换行和换页? 注意:看起来唯一的答案是横向解决方案——您必须使用 XmlWriter 而不是 XmlTextWriter 回答1 当然,在询问之后,我在 MSDN(我无法通过谷歌找到)上找到了一条指向 XmlWriterSettings.NewLineChars 的线索 然后让我得到了关于 SO 的不可接受的答案:将 XMLDocument 写入具有特定换行符的文件 (c#) 这一切都在术语中...... 回答2 使用 XmlWriterSettings 将您想要的内容设置为行尾字符。 XmlWriterSettings mySettings = new XmlWriterSettings(); mySettings.NewLineChars = "\r"; XmlWriter writer = XmlWriter.Create( new StreamWriter(@"c

2021-06-23 06:31:46    分类:技术分享    c#   xml   newline   xmltextwriter

Memory stream is empty

I need to generate a huge xml file from different sources (functions). I decide to use XmlTextWriter since it uses less memory than XmlDocument. First, initiate an XmlWriter with underlying MemoryStream MemoryStream ms = new MemoryStream(); XmlTextWriter xmlWriter = new XmlTextWriter(ms, new UTF8Encoding(false, false)); xmlWriter.Formatting = Formatting.Indented; Then I pass the XmlWriter (note xml writer is kept open until the very end) to a function to generate the beginning of the XML file: xmlWriter.WriteStartDocument(); xmlWriter.WriteStartElement(); // xmlWriter.WriteEndElement(); // Do

2021-06-23 04:57:22    分类:问答    c#   xmltextwriter

xdocument save preserve white space inside tags

I am using XDocument in LINQ to edit (insert) and save xml document. XDocument doc = XDocument.Load("c:\\sample.xml", LoadOptions.PreserveWhitespace); doc.Save("c:\\sample.xml",SaveOptions.DisableFormatting) sample.xml before doc.Save : <ELEMENT ATTRIB1="attrib1" ATTRIB2="attrib2" > value </ELEMENT> sample.xml after doc.Save <ELEMENT ATTRIB1="attrib1" ATTRIB2="attrib2"> value </ELEMENT> As you can see, there is double space after ATTRIB1 and a single space after ATTRIB2 in the original document. But these spaces have been removed by linq when I call doc.save. How can I preserve the whitespaces

2021-06-14 05:11:57    分类:问答    c#   linq-to-xml   xmltextwriter

What is the difference between XmlTextWriter and XmlWriter?

I am looking at these these two classes in C#: XmlTextWriter and XmlWriter. Can anyone explain the difference and tell me where to use which?

2021-05-17 13:55:41    分类:问答    c#   xml   xmlwriter   xmltextwriter

How can I generate XML with CR, instead of CRLF in XmlTextWriter

I'm generating XML via XmlTextWriter. The file looks good to my eyes, validates (at wc3), and was accepted by the client. But a client vendor is complaining that the line-endings are CRLF, instead of just CR. Well, I'm on a Win32 machine using C#, and CRLF is the Win32 standard line-ending. Is there any way to change the line-endings in the XmlTextWriter? Also -- shouldn't the line-endings not matter to a proper XML parser? see also: What are carriage return, linefeed, and form feed? NOTE: looks like the only answer is a sideways solution -- you have to use the XmlWriter instead of the

2021-05-08 12:01:21    分类:问答    c#   xml   newline   xmltextwriter