C#对三种XML文件的读法
2010-03-22 20:52 观海看云 阅读(411) 评论(0) 编辑 收藏 举报1. XML文件的读取1
XML文件格式如下:
<?xmlversion="1.0"encoding="utf-8"?>
<configure>
<configid="path"value="D:\新建文件夹" />
</configure>
//xml文件所在路径
private readonly static string xmlFilePath = @"..\..\DvrOut\path.xml";
private readonly static XmlDocument document = new XmlDocument();
///<summary>
///获取XML中文件的保存路径
///</summary>
///<returns></returns>
public string GetPathByConfigid()
{
document.Load(xmlFilePath);
string result = null;
foreach (XmlNode node in document["configure"])
{
if (node.Attributes["id"].Value.ToString() == "path")
{
result = node.Attributes["value"].Value.ToString();
}
}
return result;
}
///<summary>
///设置XML中文件的保存路径
///</summary>
///<param name="text"></param>
public static void SetConfig(string text)
{
document.Load(xmlFilePath);
foreach (XmlNode node in document["configure"])
{
if (node.Attributes["id"].Value.ToString() == "path")
{
node.Attributes["value"].Value = text;
}
}
document.Save(xmlFilePath);
}
2. XML文件读取方法2
XML文件如下:
<a> <b>bbb </b> <c>ccc </c> </a>
读取b节点
public string readXml(string xmlpath, string element)//xmlpath是xml的文件名,element是你要查询的节点的名称,就是b
{
try
{
string value = "";
XmlDocument doc = new XmlDocument();
doc.Load(xmlpath);
XmlNode node = doc.SelectSingleNode("//" + element);
//如果a外层还有节点就改为(“//外节点//”+ element)
value = node.InnerText;
return value;
}
catch (Exception e)
{
return "";
}
}
3. XML文件读取方法3
XML文件如下:
<a>
<b1>
<c>ccc</c>
<d>ddd</d>
</b1>
<b2>
<e>eee</e>
<f>fff</f>
</b2>
</a>
private string GetInfoByXML(string xmlFilePath,string nodeName) // xmlFilePath是xml的文件名,nodeName是你要查询的节点的名称,就是c
{
document.Load(xmlFilePath);
string result = string.Empty;
try
{
XmlNodeList nodeList = document.SelectSingleNode("a").ChildNodes;
if (nodeList != null && nodeList[0].ChildNodes != null)
{
foreach (XmlNode xn in nodeList[0].ChildNodes)
{
if (xn.Name == nodeName)
{
result = xn.InnerText;
break;
}
}
}
return result;
}
catch (Exception ex)
{
}
}
本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/hejialin666/archive/2008/07/10/2634761.aspx
出处:http://www.cnblogs.com/zhangtao/
文章版权归本人所有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 周边上新:园子的第一款马克杯温暖上架
· Open-Sora 2.0 重磅开源!
· .NET周刊【3月第1期 2025-03-02】
· 分享 3 个 .NET 开源的文件压缩处理库,助力快速实现文件压缩解压功能!
· Ollama——大语言模型本地部署的极速利器