用C语言将字符串转换为xml#
我已经使用Stringbuilder构建了一些xml标记。我想使用C#将这个Stringbuilder字符串转换为XML格式的字符串。下面我指定了输入字符串和预期的输出字符串 例:用C语言将字符串转换为xml#,xml,Xml,我已经使用Stringbuilder构建了一些xml标记。我想使用C#将这个Stringbuilder字符串转换为XML格式的字符串。下面我指定了输入字符串和预期的输出字符串 例: 输入: 预期产出: 我已经完成了这个转换的代码 例: StringBuilder ACTConfigXML=new StringBuilder(); ACTConfigXML.Append(“”); ACTConfigXML.Append(“”); ACTConfigXML.Append(“”); ACTConfi
输入:
预期产出:
我已经完成了这个转换的代码
例:
StringBuilder ACTConfigXML=new StringBuilder();
ACTConfigXML.Append(“”);
ACTConfigXML.Append(“”);
ACTConfigXML.Append(“”);
ACTConfigXML.Append(“”);
ACTConfigXML.Append(“”);
XmlDocument_ACTGraphicalXMLDoc=新的XmlDocument();
_ACTGraphicalXMLDoc.LoadXml(ACTConfigXML.ToString());
ACTConfigXML=新的StringBuilder();
Append(_ACTGraphicalXMLDoc.OuterXml);
字符串configXML=ACTConfigXML.ToString();
在本例中,我不想使用“_ACTGraphicalXMLDoc.OuterXml”进行格式化。我想将“ACTConfigXML”数据转换为预期格式。如果这是您的输入,则将其保存为XML文件。您不需要XML中的转义双引号(仅当您在程序中输入文本时才需要)。你的问题没有解释你尝试了什么,等等。也没有说明最终目标。从你发布的内容来看,string.replace()可能会起作用
output = input.replace("{", "\"");
output = output.replace("\"", "\\\"");
您可以使用XmlDocument保存字符串。从字符串构建文档很少是个好主意。如果“\u WorkSheetName.ToString()”包含任何会破坏XML的内容(如“/>”),则您将自己设置为XML错误 在字符串或磁盘文件中创建模板XML文档,使用XmlDomDocument.loadXML加载到DOM中,更新所需的值/属性
string strXML = @"
<Configuration id='to be replaced' Landscape='True' PaperKind='A3' IsNewConfiguration='true'>
<Worksheets>
<Worksheet Name='to be replaced' Zoom='100' Lock='False' Default='False'/>
</Worksheets>
</Configuration>";
XmlDocument xml = new XmlDocument();
xml.LoadXml( strXML );
XmlElement ndElement = xml.DocumentElement;
ndElement.SetAttribute( "id", System.Guid.NewGuid().ToString() );
XmlElement ndWorksheet = (XmlElement)xml.SelectSingleNode( "/Configuration/Worksheets/Worksheet" );
if( ndWorksheet != null ) {
ndWorksheet.SetAttribute("Name", "Safe worksheet name <>'\"/>");
}
xml.Save( Response.OutputStream );
string strXML=@”
";
XmlDocument xml=新的XmlDocument();
LoadXml(strXML);
XmlElement ndElement=xml.DocumentElement;
SetAttribute(“id”,System.Guid.NewGuid().ToString());
xmlement ndsheet=(xmlement)xml.SelectSingleNode(“/Configuration/Worksheets/sheet”);
如果(工作表!=null){
ndWorksheet.SetAttribute(“名称”,“安全工作表名称“\”/>”);
}
Save(Response.OutputStream);
output = input.replace("{", "\"");
output = output.replace("\"", "\\\"");
string strXML = @"
<Configuration id='to be replaced' Landscape='True' PaperKind='A3' IsNewConfiguration='true'>
<Worksheets>
<Worksheet Name='to be replaced' Zoom='100' Lock='False' Default='False'/>
</Worksheets>
</Configuration>";
XmlDocument xml = new XmlDocument();
xml.LoadXml( strXML );
XmlElement ndElement = xml.DocumentElement;
ndElement.SetAttribute( "id", System.Guid.NewGuid().ToString() );
XmlElement ndWorksheet = (XmlElement)xml.SelectSingleNode( "/Configuration/Worksheets/Worksheet" );
if( ndWorksheet != null ) {
ndWorksheet.SetAttribute("Name", "Safe worksheet name <>'\"/>");
}
xml.Save( Response.OutputStream );