python实现的tab文件操作类分享

类代码:

# -*- coding:gbk -*-
import os
class tabfile:
def __init__(self, filename, dest_file = none):
self.filename = filename
if not dest_file:
self.dest_file = filename
else:
self.dest_file = dest_file
self.filehandle = none
self.content = []
self.initflag = false
self.column = 0
self.row = 0
self.data = []
def init(self):
try:
self.filehandle = open(self.filename, ‘r’)
self.initflag = self._load_file()
except:
pass
else:
self.initflag = true
return self.initflag
def uninit(self):
if self.initflag:
self.filehandle.close()
def _load_file(self):
if self.filehandle:
self.content = self.filehandle.readlines()
self.row = len(self.content) – 1
head = self.content[0].split(‘\t’)
self.column = len(head)
for line in self.content:
#这里需要去掉末尾的换行
#line = line – ‘\n\r’
self.data.append(line.rstrip().split(‘\t’))
return true
else:
return false
def getvalue(self, row, column):
if 0 < row < self.row and 0 < column < self.column: return self.data[row][column - 1] else: return none def setvalue(self, row, column, value): if 0 < row < self.row and 0 < column < self.column: self.data[row][column] = value else: return false def savetofile(self): filewrite = open(self.dest_file, 'w') if not filewrite: return false sep_char = '\t' for line in self.data: filewrite.write(sep_char.join(line)+'\n') filewrite.close() return true

Posted in 未分类

发表评论