C ++ Windows窗体应用程序 - XML编辑现有的xml子节点

时间:2013-02-25 21:13:45

标签: c++ .net xml c++-cli

我在编辑现有的子节点时遇到了一些问题,我不知道它是否可能,但我希望它是。我几乎尝试了一切。 这是我用来检索第一个子节点文本的代码的一部分

int x;

void ReadX()
{
String ^ strFilename = L"test.xml";
XmlDocument ^ testxml = gcnew XmlDocument;

if (File::Exists(strFilename))
{
testxml->Load(strFilename);
XmlElement ^ elm = testxml->DocumentElement;
XmlNodeList ^ lstVideos = elm->ChildNodes;
//MessageBox::Show(elm->Name);
//MessageBox::Show(elm->InnerText);
x = Convert::ToInt32(lstVideos[0]->InnerText);
}

并点击按钮

textBox1->Text=System::Convert::ToString(x);

我想做的是在button2上单击以从textBox1输入值到lstVideos [0] - > InnerText 请不要链接我msdn因为我已经使用了他们的例子,我没有设法解决它。 我还是要学习很多关于xml的知识,编辑X1的文本是什么,我上面的代码读取X1的文本。可能更容易按名称阅读childnode,但我还不知道该怎么做。

这是我的xml文件

<?xml version="1.0" encoding="utf-8"?>
<Coords>
 <X1>10010</X1>
 <X2>200</X2>
 <X3>300</X3>
 <X4>400</X4>
 <X5>500</X5>
</Coords>

1 个答案:

答案 0 :(得分:0)

由于InnerText是String ^和textBox1-&gt; Text是String ^,为什么不呢:

lstVideos[0]->InnerText = textBox1->Text

此外,由于两者都是字符串,因此没有理由将InnerText转换为int,然后返回到第一位。