第一種:將datagrid中的資料以流的形式寫到excel中,格式以html的形式存在
//關閉 viewstate
enableviewstate = false;
system.io.stringwriter tw = new system.io.stringwriter();//將資訊寫入字串
system.web.ui.htmltextwriter hw = new system.web.ui.htmltextwriter(tw);//在web窗體頁上寫出一系列連續的html特定字元和文字。
//此類提供asp.net伺服器控制項在將html內容呈現給客戶端時所使用的格式化功能
//獲取control的html
dg.rendercontrol(hw);//將table中的內容輸出到htmltextwriter物件中
// 把html寫回瀏覽器
response.write(tw.tostring());
response.flush();
response.end();
第二種:將資料來源中的資料以檔案流的形式寫到excel中,格式以txt的形式存在
datatable dt = getdatatablesource();
int count = dt.columns.count;
string head = "";
string values = "";
for (int i = 0; i < count; i++)
rw.writeline(head);
rw.writeline(values);
rw.close();
fs.close();
response.redirect("report_export/dialouttemplate.xls");
第三種:將資料來源中的資料直接寫到excel中,格式以xls形式存在,好處匯出的
資料可以直接匯入,可以將數字格式自動轉化為文字格式,可以減少
格式轉化的繁瑣環節,還可以預留將數字轉換為文字的格式的行數,
可以完全自定義
fileinfo fi = new fileinfo(filepath);
if (fi.exists) //判斷檔案是否已經存在,如果存在就刪除!
datatable dt = getdatatablesource();
int count = dt.columns.count;
for (int i = 0; i < count; i++)
for (int j = 1; j < 500; j++)
資料向Excel中寫入的加速的辦法
乙個單元格乙個單元格的寫入excel雖然不錯,但是速度太慢,要重複的操作excel物件.在網上找到了個辦法,是寫入陣列,然後由陣列直寫入excel中,速度要快許多.1.生成object陣列的方法 public object getobjectarray system.data.datatable d...
Excel資料分列的三種方法
方法 二 查詢提取法 1 在b列右側插入兩列空白列,用於儲存提出的字元。2 選中c2單元格,輸入公式 left b2,find b2 1 注意 上述公式的含義是 先用 find 函式查詢間隔 號在字串中的位置,然後用 left 函式從字串左側開始,提取至間隔 號的字串 即英文本串,其中 1 是為了去...
DataTable資料批量寫入資料庫三種方法比較
1 insert迴圈插入 2 sqldataadapter.update dataset,tablename 3 sqlbulkcopy.writetoserver datatable 1 生成測試的datatable表,表結構如下 uniqueid 主鍵,自動增長 companyname comp...