Web頁面的資料匯出excel時的格式問題

2021-09-05 19:49:03 字數 1653 閱讀 8050

當我們把web頁面上的資料導成excel形式時,有時候我們的資料需要以特定的格式呈現出來,這時候我們就需要給cell新增一些樣式規格資訊。

1) 文字:vnd.ms-excel.numberformat:@

2) 日期:vnd.ms-excel.numberformat:yyyy/mm/dd

3) 數字:vnd.ms-excel.numberformat:#,##0.00

4) 貨幣:vnd.ms-excel.numberformat:

¥#,##0.00

5) 百分比:vnd.ms-excel.numberformat: #0.00%

這些格式你也可以自定義,比如年月你可以定義為:yy-mm等等。那麼知道了這些格式,怎麼去把這些格式新增到cell中呢?很簡單,我們只需要把樣式新增到對應的標籤對(即閉合標籤)即可。如

,給標籤對

新增樣式,如下:

td style

="vnd.ms-excel.numberformat:@"

>

410522198402161833

td>

同樣,我們也可以給

新增樣式,也可以給

,新增樣式,這樣就會引入乙個問題,你注意到了嗎?先看如下的**:

table 

style

=』vnd.ms-excel.numberformat:#,##0.00』

>

/p>

<

tr>

/p>

<

td>

542td

>

/p>

<

td style

=』vnd.ms-excel.numberformat: 

#0.00%』

>

0.25

td>

/p>

tr>

/p>

table

>

對,當我們在父標籤對和子標籤對都新增樣式時,資料會以哪乙個樣式呈現呢?經過測試,會以離資料最近的樣式呈現,這也是符合我們的意願的(好像也符合一句俗話:縣官不如現管)。這樣我們就可以通過改變樣式而改變資料在excel中呈現的方式(這些樣式規格你可以在前台頁面上新增也可以在後台**裡給相應的控制項如:datagrid等新增這些樣式)。如果你的應用比較簡單,那麼這已經足夠滿足你的需求。但如果你的應用比較複雜,那麼你也可以採取一種方式來達到不同的資料呈現效果。下面,我就舉乙個稍微複雜一點的應用。

例如:你的資料要呈現給不同國家和地區的使用者檢視,這樣資料的呈現的格式就會不一樣,那麼我們怎麼解決這個問題呢?當然了,你可以手工把這些資料處理好,但這畢竟不是最好的方法,因為如果我們每增加乙個其他國家或地區的使用者,那麼我們就需要把所有的資料以客戶要求的格式處理一遍,當資料量很大時,這無疑是一件很沉重且無聊的工作。那麼我們究竟應該怎樣解決類似這樣的問題呢?下面我說一下,我自己的看法:把這些格式化的資訊抽取到乙個xml檔案中,程式執行時根據不同的客戶讀取不同的格式化資訊,然後把這些格式化資訊動態的新增到我們的資料上,這樣,當我們每增加乙個其他國家或地區的使用者時,我們只需要多增加乙個xml檔案,把對應的格式化資訊寫入這個xml檔案,然後當這個國家或地區的使用者檢視時,就把對應的格式化資訊讀取出來應用到資料上即可。

以上這個例子是我突然想到的,相信跨國企業的公司會遇到類似的問題,解決方法只是提供給大家乙個思路,希望可以起到拋磚引玉的效果。

匯出頁面資料Excel

excelhtml指令碼替換 public static string nohtml string htmlstring 刪除指令碼 htmlstring regex.replace htmlstring,regexoptions.ignorecase 刪除html htmlstring regex...

頁面資料匯出Excel要點

在使用資料匯出的時候,後台的 可以自己寫根據類或者根據網上開源的工具來生成excel檔案,需要注意的是,使用get和post的方式都可以來獲取到excel檔案 拿到資料以後,轉換為excel,用流的方式輸出 os response.getoutputstream 取得輸出流 response.res...

將頁面的列表資料匯出到excel檔案中

1 用的是spring 的模式 在service介面層 根據頁面傳過來的id在庫里查詢 listselectbyprimarykeydhh long ids 在service介面的實現類中 override public listselectbyprimarykeydhh long ids link...