c#中如何从DATASET对象中读取xml数据

本文关键字:读取 xml 数据 对象 DATASET | 更新日期: 2023-09-27 18:10:01

我只是使用这段代码从xml文件中读取xml数据。成功地从文件中读取数据。我只是想知道如何从xml数据集读取SelectSingleNode数据。

public DataSet ds =new DataSet();
public FileStream stream = null;
stream = new FileStream(schdlpath, FileMode.Open);
ds.ReadXml(stream);
//after this even if i delete the xml file it won't hamper the appliaction.
stream.Close();
//this way I can print all the data..
Console.WriteLine(ds.GetXml());

我想要的只是读取数据这样的

public XmlDocument document = new XmlDocument();
XmlNode ht = document.DocumentElement.SelectSingleNode("/Schedule/AudioVedioPlayer/Height");

实际上我想读取xml数据并将其存储到一个变量中。

c#中如何从DATASET对象中读取xml数据

public XmlDocument document = new XmlDocument();
document.LoadXml(ds.GetXml());
XmlNode ht = document.DocumentElement.SelectSingleNode("/Schedule/AudioVedioPlayer/Height");

您可以将数据集中的xml写入流,然后使用流将其读入XmlDocument对象。从这里开始,您可以使用DOM进行导航。

现在,您是否尝试将数据的一部分作为XML存储到变量中?还是在寻找高度值?如果是前者,我对你的计划没有异议。如果是后者,我假设,通过查看XPath语句(SelectSingleNode()),您有以下内容:

数据集:时间表表:AudioVedioPlayer属性:高度

如果我对你的设置是正确的,那么你可以很容易地通过钻入数据集得到你需要的值。

public DataSet ds =new DataSet(); 
public FileStream stream = null;
stream = new FileStream(schdlpath, FileMode.Open); 
ds.ReadXml(stream);

然后你可以进入表格:

ScheduleTable table = ds.Schedule;
并获取值
int height = table.Height;

或者你可以直接快捷键

int height = ds.Schedule.Height;

没有理由获取XML,除非你想要一整段XML