请教替换文件中的特定行之间的字符串

请教替换文件中的特定行之间的字符串

想把一个文本文件中含有某特定字符串的两行之间的内容进行替换,想了一个办法,就是把文件的内容读出来然后进行替换再写到文件中去~但是感觉太笨了,所以想问问大家有没有比较好的办法~~可以不可以在文件中操作,比如把要替换的内容删掉再写进新的东西或是可以直接替换~~
谢谢
当然是直接把新的内容写进去了
那具体怎么操作啊~比如我的text.txt路径是C:/Temp/text.txt';文件内容是:
this is the first line
this is the second line
this is the third line
this is the fourth line
this is the fifth line
那么我要想把'this is the third line\n'替换成 'the content is changing\n'的话应该怎么写啊?请指教~
看了一些关于file操作的教程,可是都只是讲了些基本操作~
there are many other ways to do !! =]

[Copy to clipboard] [ - ]
CODE:
f = open('file.txt', 'r')
lines = f.readlines()
newLines = ''
for line in lines:
     if line == 'this is the third line\n':
          line = 'the content is changing\n'
     newLines += line
f.close()

f = open('file.txt', 'w')
f.write(newLines)
f.close()

呵呵,谢了~也就是还要读出来改然后在写到文件中去的咯~~
可以不可以直接在文件里面进行操作呢~
直接在文件里面改??
好像不行......im not sure..!!
等高手回答吧...
thanks anyway~~
使用TRUNCATE方法.
打开文件,把结束行之后的内容保存在内存中,然后定位到开始行之后,truncate之后,把新的内容和保存的内容写进度.

这个可能是开销最小的方法了.
呵呵,谢啦~~
用了比较笨的方法,读出来改了再写进去~~