0

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

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 的文本。按名称阅读子节点可能会更容易,但我还不知道该怎么做。

这是我的 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>
4

1 回答 1

0

既然 InnerText 是一个 String^,而 textBox1->Text 是一个 String^,为什么不呢:

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

此外,由于两者都是字符串,因此实际上没有理由将 InnerText 转换为 int,然后首先返回。

于 2013-02-25T21:18:33.430 回答