Edw*_*win 2 python file-io file
我正在使用python为html制作模板更新程序.我读了一行并将其与模板文件进行比较,看看是否有任何需要更新的更改.然后我想把任何更改(如果有的话)写回我刚才读的同一行.
读取文件后,我的文件指针现在位于readline()之后的下一行.无论如何,我可以回写到同一行,而无需打开两个文件句柄进行读写操作?
这是我想要做的代码片段:
cLine = fp.readline()
if cLine != templateLine:
# Here is where I would like to write back to the line I read from
# in cLine
Run Code Online (Sandbox Code Playgroud)
SO中的许多问题都是尝试读取文件并立即更新.
虽然这在技术上是可行的,但是非常困难.
(文本)文件不是按行排列在磁盘上,而是按字节排列.
问题是,读取旧行上的字节数通常与新行不同,这会弄乱生成的文件.
虽然听起来效率低,但从编程的角度来看,这是最有效的方法.
只需从一侧的文件中读取,写入另一侧的另一个文件,关闭文件并复制新创建的内容.
或者在内存中创建文件,最后在关闭旧文件后再写入旧文件.
| 归档时间: |
|
| 查看次数: |
2756 次 |
| 最近记录: |