關於讀取本地text檔案,自動被新增空格的問題

2022-04-28 23:36:19 字數 682 閱讀 5145

最近做乙個小程式,讀取本地指定路徑下的text檔案,逐行獲取text文字然後再進行處理,結果遇到了乙個奇葩問題,先插個給各位看官

坑:本地text檔案中資料為1123/10(資料反覆檢查無空格,換行之類),經過擷取後,str1=1123  str2=10,可是列印結果顯示str1.length()=5

問題原因:不詳,本人菜鳥沒弄懂,歡迎各位看官各顯神通

unicode編碼為65279的字元叫「zero width no-break space」即沒有寬度的空格符,本質上也是null值,但是不同於null。byte-order mark(bom)是位於碼點u+feff的統一碼字元的名稱。當以utf-16或utf-32來將ucs/統一碼字元所組成的字串編碼時,這個字元被用來標示其位元組序。它常被用來當做標示檔案是以utf-8、utf-16或utf-32編碼的記號。

說白了就是位於文字最前面用來標識該unicode編碼的文字內容是以utf-8、utf-16或utf-32編碼的

。通過查詢發現windows的記事本程式在開啟文字內容後會自動新增bom,我懷疑是那個模組在編碼的時候用記事本編輯過**,然後在模板或其他可能的檔案中新增了bom。

解決方法:如上對char型別首位進行判斷,如果首位存在問題則進行處理.

python操作text檔案 讀取 寫入 清空

text的儲存格式為每一行的字串儲存 text檔案的寫入 data 尊敬的領導 n t您好,可以通過轉義字元實現換行 縮排 with open r test.txt mode w encoding utf8 as tf tf.write data 迭 入 list2 尊敬的領導 n t您好 n 必須...

關於flex讀取本地檔案的問題 轉貼

flex編譯的swf檔案,只能選擇訪問本地檔案或訪問網路檔案,二者只能取一 嗯,為什麼?我也不知道,官方說是為了安全考慮 而flex編 譯的預設選項是只能訪問網路檔案,所以你將bin裡的東西copy到其他地方就不能讀取了。而你在預設的bin目錄下可以讀取得到,是因為flex認為你 是在ide環境種,...

讀取本地EXCEL檔案

data it excel like alsmex tabline occurs 0with header line.parameters fn like rlgrap filename memory id mo1.at selection screen onvalue request for fn...