我如何使用Julia查看文件是否存在无例外?如果由于某种原因我试图打开的文件不可访问,已被删除或不存在,我想确保程序不会崩溃。
答案 0 :(得分:1)
有两种简单的方法。
第一:
println(isfile("Sphere.jl"))
false
此isfile()
函数将仅检查文件是否存在。注意:如果Sphere.jl
不在当前文件路径中,则需要提供访问该文件的绝对路径。
第二(更多关于火灾的例子):
try
open("Sphere.jl", "w") do s
println(s, "Hi")
end
catch
@warn "Could not open the file to write."
end
第二个示例利用了try-catch模式。始终最好不要让程序处理错误,因此建议您使用isfile()
,除非您必须在用例中使用try-catch。
值得注意的是,在某些情况下文件存在,但无法写入文件(即,文件被操作系统锁定)。在这种情况下,尝试写入时使用try-catch是一个不错的选择。