我从一个文件,并为分隔符之间的每个数据我需要删除空白阅读,我已经在Jython中建议需要有关重写和字符串操作
写了下面的程序。当我试图重写,它在源文件的末尾重写。
filesrc = open('c:/FILE/split_doc.txt','r+')
for list in filesrc.readlines():
#split the records by the delimiter
fields = list.split(',')
list = ",".join([s.strip() for s in fields])
filesrc.writelines(list+"\n")
filesrc.close()
所以我做了一些修改和补充file.seek这样我就可以在源代码行改写,它的工作在一定程度上,除了它是在末处加入两个额外的线,这意味着有部分寻求一些问题。
修改后的方案是
filesrc = open('c:/ODI_FILE/split_doc.txt','r+')
lines=0
for list in filesrc.readlines():
#split the records by the delimiter
fields = list.split(',')
list = ",".join([s.strip() for s in fields])
filesrc.seek(lines)
filesrc.writelines(list+"\n")
lines += len(list+"\n")
filesrc.close()
请帮我正确的逻辑。
有额外的空格
52 ,William ,Kudo ,28/03/199300:00:00
11,Andrew, Andersen,22/02/199900:00:00
12,John ,Galagers,20/04/200000:00:00
13,Jeffrey ,Jeferson,10/06/198800:00:00
20,Jennie,Daumesnil,28/02/198800:00:00
21,Steve,Barrot,24/09/199200:00:00
22,Mary,Carlin,14/03/199500:00:00
30,Paul,Moore,11/03/199900:00:00
这是我的错输出
52,William,Kudo,28/03/199300:00:00
11,Andrew,Andersen,22/02/199900:00:00
12,John,Galagers,20/04/200000:00:00
13,Jeffrey,Jeferson,10/06/198800:00:00
20,Jennie,Daumesnil,28/02/198800:00:00
21,Steve,Barrot,24/09/199200:00:00
22,Mary,Carlin,14/03/199500:00:00
30,Paul,Moore,11/03/199900:00:00
9500:00:00
30,Paul,Moore,11/03/199900:00:00
这里的最后两行不应该来
请建议所需的正确的源文件和更快的方式,因为这是一个示例文件,我将不得不让这个程序为数百万行工作。
有没有办法让while逻辑在while循环中工作呢?
尽量避免像'list'这样的变量名,因为它们会影响内置类型。在这种情况下,它不是一个列表。我会使用“适合......的线路”,因为它能够正确反映内容。 – 2009-12-17 20:03:56