python刪除檔案最後一行
阿新 • • 發佈:2018-12-13
今天在修改資料分析平臺的BUG時候,發現兩個歷史遺留問題。
- 不能載入中文檔案
- csv中最後一行都是空行
嚴重的是第二個問題,因為在寫檔案的時候都是這樣寫的
line = "somethings you want to write"+"\n"1
因此,每個檔案最後都有一個空行。在前端顯示的時候老出現type i is undefined
前端顯示檔案我用的datatable這個jQuery庫,正常顯示都是這樣的
但是因為有一個空行就不能分頁,因為在遍歷的時候,遇到的item都不一樣 最後的解決方案是這樣的:
- 讀取檔案
- 直接定位到最後一個字元
- 向上讀一個字元
- 判斷是否是”\n”
- 執行刪除
- 關閉檔案
具體的程式碼如下:
# -*- coding: utf-8 -*-
"""
Created on Wed Aug 23 10:04:25 2017
@author: APAC
"""
import os
f = open("Take.csv","rb+")
f.seek(-1 ,os.SEEK_END)
if f.next() == "\n":
f.seek(-1 ,os.SEEK_END)
f.truncate()
f.close()12345678910111213
實際測試效率還可以