特殊字元^M引起的資料匯入問題
問題:特殊字元^M引起的資料匯入問題:
問題描述:
在完成需求時需要透過系統入口網站上傳原始資料,在到生產環境登入ftp下載資料.一次在從ftp下載下來資料,使用load匯入資料庫的過程後,發現匯入的資料與檔案中的資料不一致,
欄位被擷取了.
使用命令:cat -v source.txt 檢視檔案發現每行記錄後有一個特殊字元^M(經查該字元可透過ctrl+v+m輸入),
使用命令:sed 's/^M//g' source.txt 替換掉^M字元,再次匯入,成功.
問題分析:
關於使用ftp傳輸檔案的兩種方式:binary ascii
binary:以二進位制位元流傳輸檔案,保留了原檔案中的所有所以字元資訊
ascii:以ascii碼傳輸的時候,會在原系統還目標系統做相應的字元轉換
將回車換行轉換為本機的回車換行->
unix:n
windows:rn
mac:r
而上面的^M對應的是windows下dos格式的r,即十六進位制的0D,因為門戶的ftp上傳功能使用的是binary傳輸模式,所以系統沒有對windows下的回車換行進行替換,
到unix平臺就會在每行記錄後多出一個^M字元.
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/23937368/viewspace-1044947/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 【oracle 資料匯入匯出字元問題】Oracle字元
- DBeaver 資料匯入SQL時的問題SQL
- linux sed 命令引起的^M問題解決Linux
- Hive資料匯入HBase引起資料膨脹引發的思考Hive
- scheme跳轉特殊字元編碼問題Scheme字元
- Python大資料分析學習.Pandas 資料匯入問題 (1)Python大資料
- Mac——如何輸入⌘、⌥、⇧、⌃、⎋等特殊字元Mac字元
- 記憶體洩漏引起的 資料庫效能問題記憶體資料庫
- Bash的特殊字元字元
- python讀入不定行字元的問題Python字元
- 文字中的特殊字元字元
- python呼叫程式路徑中包空格,及包含特殊字元問題Python字元
- HTML特殊字元HTML字元
- 如何在Mac字型中訪問特殊字元Mac字元
- max_allowed_packet引起MySQL遷移丟失資料的問題MySql
- 資料匯入終章:如何將HBase的資料匯入HDFS?
- MySQL資料的匯入MySql
- Mongodb資料的匯出與匯入MongoDB
- 匯入和匯出AWR的資料
- EasyPoi, Excel資料的匯入匯出Excel
- 由分號引起的問題
- 深入剖析go中字串的編碼問題——特殊字元的string怎麼轉byte?Go字串字元
- flutter_boost匯入問題Flutter
- 資料庫 MySQL 資料匯入匯出資料庫MySql
- POI實現大資料EXCLE匯入匯出,解決記憶體溢位問題大資料記憶體溢位
- sqoop資料匯入匯出OOP
- Oracle 資料匯入匯出Oracle
- 資料泵匯出匯入
- Oracle資料匯入匯出Oracle
- phpMyAdmin匯入/匯出資料PHP
- 創新工場「資料下毒」論文入選NeurIPS 2019,AI安全問題需要引起關注AI
- 【HTML】08特殊字元HTML字元
- Oracle 去特殊字元Oracle字元
- 如何去除特殊字元字元
- SQL資料庫的匯入和匯出SQL資料庫
- Oracle資料泵的匯入和匯出Oracle
- MySQL:一個特殊的問題MySql
- c++ 從txt讀取資料 按照特殊字元拆分 gnssC++字元
- bc搭建資料夾顯示特殊html字元處理方法HTML字元