摘要:目前導出方式占用內存較大。比如有些狀態字段,數據庫存的就是數字或只占一個字節,完全換成中文狀態的話,可能達個字節甚至更多。若是必須要用中文形式。中文亂碼解決的話,其實也很簡單,函數,將轉為編碼,在中打開就不會錯了
問題描述:
目前、一般情況下,在web開發過程中,使用導入導出報表的情形很多。我們先說導出。項目數據量多導出行數較多,50萬行左右,選擇的是csv方式導出。針對以下應用場景,導出過程有幾點需要注意的的地方。
(測試使用環境、php7.1,mysql5.7.22,mysql5.5.53,mac自帶numbers 6.0版本,Windows系統 Excel2007版)
應用場景:
1、用戶只習慣用Excel處理數據,csv導出但是用excel打開。
2、無論導入導出,用戶均對數據表格格式沒有要求(邊框、底紋、對齊等),僅對數據格式有基本要求(數字、文本、浮點數等)。
3、后端對xls/xlsx大文件的導入性能較差。(目前php導出excel方式占用內存較大。大數據導出很可能就是內存溢出)
導出注意點:
1、導出數據龐大,盡可能少用漢字。比如有些狀態字段,數據庫存的就是數字或只占一個字節,完全換成中文狀態的話,可能達6個字節甚至更多。效率受影響。若是必須要用中文形式。盡可能精簡。
2、其他常見問題。先看一組圖:
這是初始要導出的數據
這是csv格式展示,這是我們想要的結果。
這是windows系統excel2007版本打開的樣子。
仔細觀察,我們發現了幾個問題:zifunumebr字段前導0都沒了。number字段有個長整型變成了科學計數法。zifu字段中文漢字變成了亂碼。最后一行zifu、fudian字段在excel中顯示的時候合并了。
這里解決方法其實也很簡單。就是在插入字段后面加一個制表符 “t”,注意,不能使用單引號。這樣一來除了中文亂碼不能解決,其他類型字段都能解決。中文亂碼解決的話,其實也很簡單,iconv函數,將urf-8轉為GBK編碼,在Excel中打開就不會錯了
文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。
轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/31547.html
摘要:直接通過構造函數進行創建。構造函數是一個對象,可以包含下面兩個屬性類型類型未知返回空字符串決定的數據格式數據中的如何被轉換,可以取值為不變默認或者按操作系統轉換方法返回一個新的對象,包含了源對象中指定范圍內的數據。 front-end 前段時間項目中有個需求,將數據導出為csv。最近閑下來,整理下相關知識點。 What is Blob 一個 Blob對象表示一個不可變的, 原始數據的類...
摘要:還原導出的表數據部分字段的表數據導入還原文件 一、 mongodump備份數據庫 1.一般常用的備份命令格式 mongodump -h IP --port 端口 -u 用戶名 -p 密碼 -d 數據庫 -o 文件存在路徑 如果想導出所有數據庫,可以去掉-d 2.導出數據庫[root@local ~]# mongodump -h 127.0.0.1 --port 30216 -d t...
摘要:將另存為格式時,文件將工作表中的單元格所顯示的文本和數值以逗號分離進行保存。方法此處使用模塊的函數讀取文件,函數以字典形式返回,字典的鍵則是這個單元格的標題即列頭,每一個單元格內容放在字典的值內。 前言 數據是進行量化交易的基礎和關鍵,目前國內做量化產品的金融機構大部分是從券商獲取高頻實時行情數據的,另外很多金融網站也提供了數據接口,可以調用接口方式獲取,也可以用爬蟲的方式獲取。文本講...
閱讀 3917·2021-09-09 09:33
閱讀 1773·2021-09-06 15:14
閱讀 1919·2019-08-30 15:44
閱讀 3075·2019-08-29 18:36
閱讀 3765·2019-08-29 16:22
閱讀 2095·2019-08-29 16:21
閱讀 2530·2019-08-29 15:42
閱讀 1648·2019-08-29 11:00