【问题标题】:Difference in file size between StringIO and actual File SizeStringIO 和实际文件大小之间的文件大小差异
【发布时间】:2021-06-10 01:06:08
【问题描述】:

我有以下代码

import StringIO
import os
output = StringIO.StringIO("c:/temp/file.txt")  
position = output.tell()
output.seek(0, os.SEEK_END)
size = output.tell()
output.seek(position, os.SEEK_SET) 
print size

它显示大小为 22 但是当我运行以下时,它显示大小为 607011L

os.stat("c:/temp/file.txt")).st_size 

有没有办法将StringIO大小的22转换为文件的实际大小607011L

【问题讨论】:

  • 阅读the docs,就会真的清楚为什么这不起作用(StringIOpaths 或实际的文件)。旁注:不要学习 Python 2。它是一种死语言,一年多前就到了生命的尽头。立即学习 Python 3,省去以后重新学习的工作量。
  • 显示 16,而不是 22。

标签: python stringio


【解决方案1】:

因为StringIO 不读取文件。您在那里所做的是创建了一个包含该字符串作为其内容的假文件。如果要读取真实文件,请使用open。如果你想要一些像文件但在内存中使用字符串的东西,请使用StringIO

【讨论】:

    猜你喜欢
    • 2015-11-21
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多