C# 如何在C中更改XML节点名
我想更改C中的XML节点名称, 我的密码是C# 如何在C中更改XML节点名,c#,sql-server,xml,C#,Sql Server,Xml,我想更改C中的XML节点名称, 我的密码是 string filepath = @"C:\JobDocuments\jobsxml.xml"; XDocument doc = XDocument.Load(filepath); doc.Nodes.Name = "jobs"; doc.Save(filepath); 我的XML文件是 <jobs> -<Table> <title><![CDATA[ Country ]]
string filepath = @"C:\JobDocuments\jobsxml.xml";
XDocument doc = XDocument.Load(filepath);
doc.Nodes.Name = "jobs";
doc.Save(filepath);
我的XML文件是
<jobs>
-<Table>
<title><![CDATA[ Country ]]></title>
<category><![CDATA[ Site Engineering / Project Management ]]></category>
<description><![CDATA[ sades ]]></description>
</Table>
</jobs>
我希望输出如下:
<jobs>
<job>
<title><![CDATA[ Country ]]></title>
<category><![CDATA[ Site Engineering / Project Management ]]></category>
<description><![CDATA[ sades ]]></description>
</job>
</jobs>
我想在这里显示,而不是-。我在查询中更改了,但没有给出正确的顺序
SELECT '<![CDATA[ ' + JobTitle + ' ]]>' as title,
'<![CDATA[ ' + JobCategory + ' ]]>' as category,
'<![CDATA[ ' + JobDescription + ' ]]>' as [description]
from Jobs FOR XML PATH('job')
请帮帮我。
谢谢你能试试这个吗
String sampleXml = "<jobs><Table><title><![CDATA[ Country ]]></title> <category><![CDATA[ Site Engineering / Project Management ]]></category> <description><![CDATA[ sades ]]></description> </Table></jobs>";
XmlDocument xmlDoc = new XmlDocument();
xmlDoc.LoadXml(sampleXml);
XmlNode rootE = xmlDoc.GetElementsByTagName("jobs")[0];
XmlNode oldE = rootE.SelectSingleNode("Table");
XmlNode newE = xmlDoc.CreateElement("job");
rootE.ReplaceChild(newE, oldE);
while (oldE.ChildNodes.Count != 0)
{
newE.AppendChild(oldE.ChildNodes[0]);
}
while (oldE.Attributes.Count != 0)
{
newE.Attributes.Append(oldE.Attributes[0]);
}
基本上你想换工作表吗?更改jobsxml.xml的问题在哪里?这是因为它是从另一个源创建的?我在上一个问题中向您介绍了如何执行此操作,看起来您没有执行此操作…注意:好的解决方案是更改xml本身,而不是使用逻辑执行此操作…谢谢@mpacheco,我正在获取根级别的“错误”数据无效。第1行,位置1.“我在文件中看到靠近的连字符?您能不能不更改XML?