前面写了Arraylist转换成Excel或xml,现在来写一下Excel或xml转换成DataSet。通过这些例子我们可以进行扩展,将文件跟任意格式的数据相互转换
首先来看Excel
string strConn = "Provider=Microsoft.Jet.OLEDB.4.0;" +
"Data Source=" + Server.MapPath("Public/DataExport/LoadData.xls") + ";" +
"Extended Properties=Excel 8.0;";
OleDbConnection conn = new OleDbConnection(strConn);
OleDbDataAdapter myCommand = new OleDbDataAdapter("select * FROM [LoadData$] ", strConn);
DataSet myDataSet = new DataSet();
myCommand.Fill(myDataSet);
看,这里好像很简单吧,实际上我们有时候会忽略一个问题,Excel本来就是一种数据文件。这就是为何可以如此简单。
再来看xml
DataSet ds = new DataSet();
ds.ReadXml(Server.MapPath("LoadData.xml"));
DataTable dt = ds.Tables["map"];
这里也是一样的简单,当然我们这里的文件都是有规格的。太随意的文件是没有意义的。