前言:
现在咱们对“c xml文件读写”都比较注意,小伙伴们都想要分析一些“c xml文件读写”的相关内容。那么小编同时在网上汇集了一些有关“c xml文件读写””的相关知识,希望朋友们能喜欢,各位老铁们快快来学习一下吧!既然INI文件退出历史舞台,那么用XML吧,用来存储小型数据还是不错的。用C#读写XML也很方便,下面就介绍通过DataSet方式来实现对XML通用读取的类。
using System;
using System.Collections.Generic;
using System.Data;
using System.Linq;
using System.Text;
using System.Xml.Linq;
namespace yournamespace
{
class OperateXml
{
private string _xmlName;
public string xmlName
{
set
{
_xmlName = value;
}
get
{
return _xmlName;
}
}
/// <summary>
/// 向指定的xml文件写入数据
/// </summary>
/// <param name="xmlDataSet">Xml文件根节点</param>
/// <param name="xmlDataTable">Xml文件次根节点</param>
/// <param name="WriteCount">写入多少数据</param>
/// <param name="xmlFieldName">写入字段名</param>
/// <param name="xmlFieldValue">写入字段值</param>
/// <returns></returns>
public int WriteXml(string xmlDataSet, string xmlDataTable, int WriteCount, string[] xmlFieldName, string[] xmlFieldValue)
{
try
{
DataSet ds = new DataSet(xmlDataSet);
DataTable dt = new DataTable(xmlDataTable);
ds.Tables.Add(dt);
for (int i = 0; i < WriteCount; i++)
{
dt.Columns.Add(xmlFieldName[i], typeof(string));
}
DataRow row = dt.NewRow();
for (int i = 0; i < WriteCount; i++)
{
row[i] = xmlFieldValue[i];
}
dt.Rows.Add(row);
ds.WriteXml(_xmlName);
return WriteCount;
}
catch
{
return -1;
}
}
/// <summary>
/// 采用读取数据库方式读取数据
/// </summary>
/// <param name="xmlDataTable">Xml文件根节点,可以为次根节点,值以上的都为根节点</param>
/// <param name="RowN">多个根节点相同时依次往下为行数</param>
/// <param name="ReadCount">读入多少数据</param>
/// <param name="xmlFieldName">读入字段名字</param>
/// <param name="xmlFieldValue">读入字段值</param>
/// <returns></returns>
public int ReadXml(string xmlDataTable,int RowN, int ReadCount, string[] xmlFieldName, out string[] xmlFieldValue)
{
xmlFieldValue = new string[ReadCount];
try
{
DataSet ds = new DataSet();
ds.ReadXml(_xmlName);
DataTable dt = ds.Tables[xmlDataTable];
for (int i = 0; i < ReadCount; i++)
{
xmlFieldValue[i]= dt.Rows[RowN][xmlFieldName[i]].ToString();
}
return ReadCount;
}
catch
{
return -1;
}
}
}
}
将上面的代码拷贝到你的程序里,格式化就可立即使用记得打赏。
标签: #c xml文件读写