您的位置:首页 > 其它

DataSet与XML导入导出方法

2006-09-12 11:43 501 查看
忙活半天弄好了,又告诉我要以Excel形式导入导出。这点代码删了可惜,索性保存到这里。

/// <summary>
/// 导出考生信息到XML文件
/// </summary>
/// <param name="toPath"></param>
private void ExportToXml(string toPath)
{
this.ds.WriteXml(toPath,XmlWriteMode.WriteSchema);
}

/// <summary>
/// 导入考生信息
/// </summary>
/// <param name="fromPath">导入的XML文件</param>
private void ImportFromXml(string fromPath)
{
using(FileStream fsReadXml=new FileStream(fromPath,FileMode.Open))
{
XmlTextReader myXmlReader=new XmlTextReader(fsReadXml);
ds_xml.ReadXml(myXmlReader);
myXmlReader.Close();
int pbValue=1;
int count=ds_xml.Tables[0].Rows.Count;
//写入数据库
foreach(DataRow dr in ds_xml.Tables[0].Rows)
{
try
{
this.pbProgress.Value=0;
this.panProgress.Visible=true;
this.lblMsg.Text="正在导入..."+dr["xjh"].ToString().Trim();
DB db=new DB();
SqlParameter[] paras={
new SqlParameter("@xjh",dr["xjh"].ToString().Trim()),
new SqlParameter("@xxdm",dr["xxdm"].ToString().Trim()),
new SqlParameter("@xm",dr["xm"].ToString().Trim()),
new SqlParameter("@xb",dr["xb"].ToString().Trim()),
new SqlParameter("@bh",dr["bh"].ToString().Trim()),
new SqlParameter("@zp",dr["zp"]),
};

if(ds.Tables["xs_ksxx"].Select("xjh='"+dr["xjh"]+"'").Length==0)
{
string strInsertJBXX="insert into xs_jbxx(xjh,xxdm,xm,xb,bh,zp) values(@xjh,@xxdm,@xm,@xb,@bh,@zp)";
db.ExecCommand(strInsertJBXX,paras);
}
else if(ds.Tables["xs_ksxx"].Select("xjh='"+dr["xjh"]+"'").Length==1)
{
string strUpdateJBXX="update xs_jbxx set xxdm=@xxdm,xm=@xm,xb=@xb,bh=@bh,zp=@zp where xjh=@xjh";
db.ExecCommand(strUpdateJBXX,paras);
}
System.Threading.Thread.Sleep(10);
this.pbProgress.Value=100;
this.pbProgressAll.Value=(int)((pbValue/count)*100);
Application.DoEvents();
pbValue++;
ds.Clear();
DataBind(rowfilter);
}
catch(Exception ex)
{
this.panProgress.Visible=false;
MessageBox.Show(ex.ToString());
}
}
this.panProgress.Visible=false;
}
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: