0

我正在尝试测试上传的大小以验证其大小。在上传算法之外,只需查看临时文件就是我遇到问题的地方。我的桌面上有一个名为 的测试文件test1.png,大小为 115 KB。

a = '/users/rich/desktop/test1.png'
s = File.open(a, 'wb')
r = File.size(a)
p r                         => 0
p s.size                    => 0

不确定我在这里做错了什么,但两者都解析为 0。不正确。

如何获取文件的大小?

4

1 回答 1

2

问题是'w'标志,因为它会将现有文件截断为零长度,因此,由于您在获取文件大小之前打开文件,因此您会得到0.

要获得大小,您可以只使用文件的路径而不使用File.open

a = '/users/rich/desktop/test1.png'
File.size(a)

或者,如果您需要创建File对象,只需使用'r'标志:

a = '/users/rich/desktop/test1.png'
s = File.open(a, 'r')

现在您可以使用File.size(a)s.size获取文件的大小。

于 2018-06-28T00:31:36.827 回答