Windows窗体项目正确格式的XML在文本框字段
本文关键字:XML 文本 字段 格式 窗体 项目 Windows | 更新日期: 2023-09-27 17:50:36
在我的项目上,我有一个形式,我有TextBox
在执行我的程序的某些点,我想把XML
字符串在我的TextBox
-没有什么复杂的。
问题在于XML
在TextBox
中显示的格式是:
<?xml version="1.0" encoding="utf-16" ?><IOTPMessage xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<Element1>value</Element1><Element2>value</Element2><Element3>value</Element3></IOTPMessage>
我希望它看起来像正确的XML
的样子(新的行,制表符),这是容易阅读:
<?xml version="1.0" encoding="utf-16" ?>
<IOTPMessage xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<Element1>value</Element1>
<Element2>value</Element2>
<Element3>value</Element3>
</IOTPMessage>
我把XML
字符串放到textBox:
TextBox someBox;
someBox.Append(XMLstring);
老实说,我甚至不知道从哪里开始-除了寻找合适的文章或样本,我没有找到,也许你们中的任何人可以重定向到我可以找到解决方案的地方?
您可以使用XmlTextWriter
来显示正确的XML
消息,如:
MemoryStream w = new MemoryStream();
XmlTextWriter writer = new XmlTextWriter(w, Encoding.Unicode);
XmlDocument document = new XmlDocument();
document.LoadXml(xmlString);
writer.Formatting = Formatting.Indented;
document.WriteContentTo(writer);
writer.Flush();
w.Seek(0L, SeekOrigin.Begin);
StreamReader reader = new StreamReader(w);
return reader.ReadToEnd();