StringIO 和实际文件大小之间的文件大小差异

问题描述

我有以下代码

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 

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

解决方法

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

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...