本文演示一個簡單的辦法,並使用程序將一個dataset中的內容填充到指定的格子中,目的是盡可能的通用,從而避免C#代碼必須知道Excel文件中字段和內容的位置的情況。
先制作一個簡單的Excel文件作為模板,為了防止要填充的Cell中的內容和標題的內容一樣,所以要填充內容的Cell中的內容是“$” + 字段名(要和DataTable中的列名一致),效果如圖:
創建一個Winform程序,給窗體上添加兩個按鈕,代碼分別為:
創建XML:
private void button1_Click(object sender, EventArgs e)
{
DataColumn dcName = new DataColumn("name", typeof(string));
DataColumn dcAge = new DataColumn("age", typeof(int));
DataColumn dcMemo = new DataColumn("memo", typeof(string));
DataTable dt = new DataTable();
dt.Columns.Add(dcName);
dt.Columns.Add(dcAge);
dt.Columns.Add(dcMemo);
DataRow dr = dt.NewRow();
dr["name"] = "dahuzizyd";
dr["age"] = "20";
dr["memo"] = "dahuzizyd.cnblogs.com";
dt.Rows.Add(dr);
dt.AcceptChanges();
DataSet ds = new DataSet();
ds.Tables.Add(dt);
ds.WriteXml(Application.StartupPath +"\\ExcelBindingXml.XML");
}