1、写入
public void EventCodeSigns()
{
//创建DataTable数据表格,并填充数据。
DataTable dt = new DataTable();
dt.TableName = "huanjing";
dt.Columns.Add("code");
dt.Columns.Add("sign");
for (int i = 0; i < this.EventCodes.Count; i++)
{
DataRow dr = dt.Rows.Add();
dr[0] = this.EventCodes[i];
dr[1] = this.EvCodeSigns[i];
}
//指定文件位置
string filepatch = ConfigLibrary.ConfigManage.AppPach + "\\EventSigns\\" + devType + "\\" + devId + ".xml";
//System.Environment.CurrentDirectory(获取当前路径)
//指定文件目录
string dirPath = filepatch.Substring(0, filepatch.LastIndexOf("\\"));
//判断目录是否存在
if (!System.IO.Directory.Exists(dirPath))
{
try
{
//创建目录
System.IO.Directory.CreateDirectory(dirPath);
}
catch
{
}
}
//将DataTable数据写入到指定的文件中
lock (obj)
{
dt.WriteXml(filepatch);
}
}
2、读取
string filepatch = ConfigLibrary.ConfigManage.AppPach + "\\EventSigns\\" + devType + "\\" + devId + ".xml";
if (System.IO.File.Exists(filepatch))
{
DataSet ds = new DataSet();
lock (base.obj)
{
ds.ReadXml(filepatch);
}
DataTable dt = ds.Tables[0];
if(dt.Rows.Count!=0)
{
for (int i = 0; i < dt.Rows.Count;i++ )
{
string a = dt.Rows[i][0].ToString();
if(base.EventCodes[i]==short.Parse(dt.Rows[i][0].ToString()))
{
base.EvCodeSigns[i] = byte.Parse(dt.Rows[i][1].ToString());
}
}
}
}