今天在修改数据分析平台的BUG时候,发现两个历史遗留问题。
- 不能加载中文文件
- csv中最后一行都是空行
严重的是第二个问题,因为在写文件的时候都是这样写的
line = "somethings you want to write"+"\n"
因此,每个文件最后都有一个空行。在前端显示的时候老出现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()
实际测试效率还可以