Python-将数据从一个文件复制到另一文件

时间:2018-06-22 13:45:12

标签: python

我正在尝试将一个文件的内容复制到另一个文件。

该脚本已成功将内容复制到文件,但是当我尝试对输出文件运行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()

3 个答案:

答案 0 :(得分:2)

write操作之后,文件指针位于文件的末尾,因此您需要将其重置为开始。另外,此时文件系统IO缓冲区可能尚未刷新(您尚未关闭文件)...

简单的解决方案:关闭outFile并重新打开以进行读取。

作为旁注:请务必确保确实关闭文件无论发生什么情况,特别是在写入时,否则可能会损坏数据。最简单的方法是with语句:

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

# at this point both files have been automagically closed

答案 1 :(得分:1)

写入后您忘记返回outFile的开头。 因此,插入outFile.seek(0)应该可以解决您的问题。

答案 2 :(得分:0)

完成写入后,文件指针位于文件的末尾,因此没有数据。重新定位指针以开始文件。