文件大小差异-python

时间:2018-01-26 03:37:40

标签: python python-3.x file

当我使用st_size读取文件大小时,我得到11264字节

k = os.stat(r"C:\Users\sakth\Desktop\ASRS.txt")
print(k.st_size)

但是当我在块中读取文件并总结它们的字节时,我只得到11060字节。

fp = open(r"C:\Users\sakth\Desktop\ASRS.txt", 'r')    
total_bytes = 0

while True:
    chunk = fp.read(1024)
    if chunk == '':
        print("File reached EOF")
        break
    print(chunk)
    total_bytes = total_bytes + len(chunk)

print("total bytes sent", total_bytes)

任何人都可以解释为什么同一个文件会获得不同的大小?

1 个答案:

答案 0 :(得分:4)

您在Windows上,并且您的文件可能包含204(11264-11060)回车换行符对,当在文本模式下读取时,它们被归一化为单个换行符(\n)字符。使用二进制模式('rb')来避免此转换。