gpt4 book ai didi

io - 如何检查 Julia 中的文件是否为空?

转载 作者:行者123 更新时间:2023-12-01 22:24:13 25 4
gpt4 key购买 nike

好的,我想在 Julia 中绘制存储在数组文本文件(通常的表格文本文件)中的一些点。我可以通过简单的方式检索值data=readdlm("FileInCase01.dat") 如果文件不为空。如果文件为空,我需要 data=[]、一个空数组和一个空图。该文件始终存在。所以 isfile 没有用。但有时它是空的。如果我尝试在一个空文件上使用 readdlm,它会返回一个错误:
LoadError:在第 0 行,第 0 列:ArgumentError(“dims 中的行数必须 > 0,得到 0”)
在加载 In[21] 时,在从第 2 行开始的表达式中
这表明 readdlm 不能返回空数组。所以我必须事先检查文件是否为空。应该怎么做?

最佳答案

您可以使用 filesize 检查文件大小:

shell> cat test.csv
#

julia> filesize("test.csv")
2

空文件的文件大小将为 0。但要注意:即使“test.csv”不为空,readdlm 仍会抛出错误,因为它只包含注释字符:

julia> readdlm("test.csv")
ERROR: at row 0, column 0 : ArgumentError("number of rows in dims must be > 0, got 0")

所以@DanGetz 对 try/catch block 的建议可能是处理此处故障的更稳健的方法。

关于io - 如何检查 Julia 中的文件是否为空?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37304274/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com