<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    ?

    最近項目需要將網(wǎng)頁上的數(shù)據(jù)導出為 excel ,雖然處理方法簡單,但是我這做了些不同情況的測試,以及我使用的是 PHP ,并非 JSP 。原理是一樣的,將頭部設(shè)置成 excel 對應(yīng)的格式。所以我還是認為應(yīng)該做個總結(jié)記錄下。希望其他同行遇到同樣的需求的時候我這篇文章能起到一點點微弱的正面作用。

    ?

    php

    <? php

    ??? header ( "Content-Type:application/vnd.ms-execl" );

    header ( "Content-Disposition:filename=test.xls" );

    ?>

    對應(yīng)的 JSP

    <%

    response.setHeader("Content-disposition","inline; filename=test1.xls");

    ?%>


    其中,inline 線上瀏覽方式,對應(yīng) attachment 下載保存。當然不寫,他也會詢問你的。

    我的較完整的
    php 測試代碼 1

    <? php

    ??? header ( "Content-Type:application/vnd.ms-execl" );

    ??? header ( "Content-Disposition:filename=test.xls" );

    ??? echo "test1\t";

    ??? echo "test1\t";

    ??? echo "test1\t";

    ??? echo "test1\t";

    ??? echo "test1\n";

    ??? echo "test2\t";

    ??? echo "test2\t";

    ??? echo "test2\t";

    ??? echo "test2\t";

    ??? echo "test2\n";

    ?>

    測試打開網(wǎng)頁后,提示保存或者打開 excel 文件。結(jié)果也顯示是正確的。代碼中關(guān)于 \t’, 其實你取數(shù)據(jù)輪到下一列就用‘ \t ’,而遇到下一行就用‘ \n ’。簡單吧。而我隨后進行了 table 的原始測試,也就是頁面本來就有表格的那種。比如:

    php 測試代碼 2

    <? php

    ??? header ( "Content-Type:application/vnd.ms-execl" );

    ??? header ( "Content-Disposition:filename=test.xls" );

    ?>

    < table cellpadding =" 1 " cellspacing =" 1 " border =" 1 " >

    ??? < tr >

    ??? < td width =" 30 " > test1 </ td >

    ??? < td width =" 60 " > test1 </ td >

    ??? < td width =" 30 " > test1 </ td >

    ??? < td width =" 100 " > test1 </ td >

    ??? < td width =" 80 " > test1 </ td >

    ??? </ tr >

    ???

    ??? < tr >

    ??? < td > test2 </ td >

    ??? < td > test1 </ td >

    ??? < td > test1 </ td >

    ??? < td > test1 </ td >

    ??? < td > test1 </ td >

    ??? </ tr >

    </ table >

    ?

    測試結(jié)果順利導出頁面 table excel

    說明:

    1.??? 代碼指定的寬度是起了作用。如果不制定,當然就自由伸縮,以放得下為標準。

    2.?????? 剛開始表格 cellpadding =" 1 " cellspacing =" 1 " border =" 1 " 這些屬性我都沒有設(shè)置,導的 excel 是沒有單元格邊框的。

    3. 還有千萬別在 HTML 里搞那 7788 的頭聲明(因為這里指定了,別沖突了哦)。小心出錯。 o( _ )o…
    4. 當我們要導出word時候呢?
    你肯定已經(jīng)知道方法了。對的,我們只需要把contentType改成"application/msword"以及filename的副檔名改成.doc就可以了。這個我沒有測試。

    posted on 2007-08-09 21:36 -274°C 閱讀(3507) 評論(1)  編輯  收藏 所屬分類: PHP


    FeedBack:
    # re: 從網(wǎng)頁導出excel
    2007-12-24 01:40 | java-he
    4.導出記事本:

    response.setContentType("application/octet-stream");
    response.setHeader("Content-Disposition","attachment; filename=脫機用戶資料修改說明.txt");

    header ( "Content-Type:application/octet-stream" );
    header ( "Content-Disposition:attachment; filename=脫機用戶資料修改說明.txt" );

    打印換行發(fā)現(xiàn):\n 在記事本下顯示不是換行 所以用 \r\n
      回復(fù)  更多評論
      

    常用鏈接

    留言簿(21)

    隨筆分類(265)

    隨筆檔案(242)

    相冊

    JAVA網(wǎng)站

    關(guān)注的Blog

    搜索

    •  

    積分與排名

    • 積分 - 914351
    • 排名 - 40

    最新評論

    主站蜘蛛池模板: 亚洲美女自拍视频| 久久99国产乱子伦精品免费| 亚洲精品国产啊女成拍色拍| 亚洲国产成人影院播放| www.黄色免费网站| 免费国产黄网站在线观看可以下载| 欧洲亚洲国产精华液| 亚洲第一页在线播放| 国产A在亚洲线播放| 亚洲国产成人影院播放| 成熟女人牲交片免费观看视频| 少妇无码一区二区三区免费| 一级毛片免费毛片毛片| 亚洲AV无码片一区二区三区 | 亚洲成av人片不卡无码| 亚洲色成人中文字幕网站| 亚洲成?v人片天堂网无码| 午夜dj免费在线观看| 成年女人午夜毛片免费看| 精品国产sm捆绑最大网免费站| 伊人免费在线观看| 特黄特色大片免费| 女bbbbxxxx另类亚洲| 亚洲日本VA中文字幕久久道具| 亚洲国产成人久久99精品| 亚洲一区二区成人| 亚洲三级电影网址| 亚洲国产精品久久久久| 亚洲AV无码第一区二区三区| 亚洲中文字幕在线观看| 在线A亚洲老鸭窝天堂| 自拍偷自拍亚洲精品第1页| 亚洲中文字幕无码中文字在线| 在线精品亚洲一区二区三区| AV在线亚洲男人的天堂| 最新亚洲成av人免费看| 亚洲精品无码永久在线观看你懂的| 亚洲女同成av人片在线观看| 亚洲国产三级在线观看| 亚洲另类激情综合偷自拍| 久久亚洲精品无码aⅴ大香|