1. 程式人生 > >C#、filestream、streamwriter,html方式生成excel

C#、filestream、streamwriter,html方式生成excel

1、切換單元格:/t

       換行:/n

       這種方法無法處理輸出資料中帶有/t/n的字串,也無法處理單元格內換行

       至於合併單元格、居中、設定背景顏色、設定字型等,暫時沒找到解決方案

2、html方式

     切換單元格:<td></td> 

     換行:<tr></tr>

     單元格內換行:<table border='1' ><tr><td>第一行<br style='mso-data-placement:same-cell;'/>第二行<br style='mso-data-placement:same-cell;'/> 第三行</td><td></tr></table>

     合併一行,設定居中,並設定背景色:<table border='1' align='center'><tr><td colspan='4' bgcolor=#A8BEC9>標題欄</td></tr></table>

     背景色編碼可在網址http://ifukua.com/blogdaquan/html-color-codes/中進行嘗試找到

     日期的處理:<table border='1'><td style=\"vnd.ms-excel.numberformat:yyyy/mm/dd HH:mm:ss.ms.000\"></td>

     資料格式:<td xmlns:x=\"urn:schemas-microsoft-com:office:excel\">123456789012345</td>,這個我試了很多種方法,結果都是科學技術法,沒有用

補充:以上方法生成資料再重新匯入時,遇到很大麻煩。

1、資料不能修改,如果修改,資料檔案的程式碼就會發生變化。

比如,原本只想利用<table>輸出excel格式,結果修改資料後,檔案就自動變成了完整的html格式。這種改變還有一系列的後果,如原來的空值,就會變成全形空格,一些特殊符號比如>或者<就會轉碼輸出。

2、用htmlagilitypack進行解析匯入,特殊符號並不會轉碼回來,還需要自己解析。