簡體   English   中英

Python - 將數據從一個文件復制到另一個文件

[英]Python - Copying data from one file to another file

我試圖將一個文件的內容復制到另一個文件。

該腳本成功將內容復制到該文件,但是當我嘗試使用輸出文件運行READ命令來打印輸出時,它是空白的。

from sys import argv
script, inputFile, outputFile = argv
inFile = open(inputFile)
inData = inFile.read()
outFile = open(outputFile, 'w+')
outFile.write(inData)
print("The new data is:\n",outFile.read())
inFile.close()
outFile.close()

write操作之后,文件指針位於文件末尾,因此您需要將其重置為開頭。 此外,文件系統IO緩沖區可能尚未在此時刷新(您尚未關閉文件)...

簡單的解決方案:關閉outFile並重新打開以進行閱讀。

作為旁注:始終確保在發生任何事情時關閉文件,特別是在寫入時,否則您可能最終會損壞數據。 最簡單的方法是with語句:

with open(...) as infile, (...) as outfile:
    outfile.write(infile.read())

# at this point both files have been automagically closed

outFile之后你忘了回到outFile的開頭。 所以插入outFile.seek(0)應該可以解決你的問題。

完成寫入后,文件指針位於文件的末尾,因此沒有數據存在。 重新定位指向文件開頭的指針。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM