2012-04-17 34 views
0

テキストファイルから空白を削除するためのjythonコードを作成しようとしています。 私はテキストファイルから空白を削除するためのJythonコード

のようなテキストファイルを持っています
STARTBUR001 20120416 
20120416MES000000002012032200000000020120323000000000201203240000000002012032600000000020120327000000000201203280000000002012032900000000020120330000000000 


20120416MES202566 2012030500000000020120306000000000201203070000000002012030800000000020120309000000000201203100000000002012031100000000020120312000000000201203130000000002012031400000000020 


20120416MES275921 20120305000000000201203060000000002012030700000000020120308000000000201203090000000002012031000000000020120311000000000201203120000000002012031300000000020120314000000000 

END 0000000202 

ここではすべての行が1行です。 しかし、私はしたいが、私はENDに遭遇するまで、二行目からチェックを開始し、各ラインのtyhe終わりにすべてのスペースを削除したいすべてでそう

STARTBUR001 20120416 
20120416MES000000002012032200000000020120323000000000201203240000000002012032600000000020120327000000000201203280000000002012032900000000020120330000000000 
20120416MES202566 2012030500000000020120306000000000201203070000000002012030800000000020120309000000000201203100000000002012031100000000020120312000000000201203130000000002012031400000000020 
20120416MES275921 20120305000000000201203060000000002012030700000000020120308000000000201203090000000002012031000000000020120311000000000201203120000000002012031300000000020120314000000000 
END 0000000202 

のようなものです。

誰かがこのコードを書いて私を導くことができますか?

は次のように試してみました:

srcfile=open('d:/BUR001.txt','r') 
trgtfile=open('d:/BUR002.txt','w') 
readfile=srcfile.readline() 
while readfile: 
    trgtfile.write(readfile.replace('\s','')) 
    readfile=srcfile.readline() 
srcfile.close() 
trgtfile.close() 

おかげで、 マヘシュ

+0

はsrcfile = open( 'd:/BUR001.txt'、 'r')のようになりました trgtfile = open( 'd:/BUR002.txt'、 'w') readfile = srcfile.readline() readfile : trgtfile.write(readfile.replace( '\ s'、 '')) readfile = srcfile.readline() srcfile.close() trgtfile.close() – Maheshgx

答えて

0

をあなたはこれらの特別な行は特別な値で始まるという事実を使用することができます。

line = srcfile.readline() 
while line: 
    line2 = line 
    if not line2.startswith('START') and not line2.startswith('END'): 
     line2 = line2.replace(' ','') 
    trgtfile.write(line2) 
    line = srcfile.readline() 

readline()結果文字列の端部を有することに注意してください\n(または入力ファイルの最後に空白がある)で、このコードはonlではなく、行からすべてのスペースを削除しますラインの終わりのもの。

私はあなたの例を理解している場合、あなたが望むすべてが空行を削除することで、その代わりに、行毎にファイルを読み込む一度それを読む:

content = srcfile.read() 

と、コンテンツから空行を削除します。

while '\n\n' in content: 
    content = content.replace('\n\n', '\n') 
+0

おかげでMichal .. :) – Maheshgx

関連する問題