gpt4 book ai didi

java - 在 Java 中是否有 try/catch 的替代方法来打开文件?

转载 作者:太空狗 更新时间:2023-10-29 20:58:29 25 4
gpt4 key购买 nike

我记得在我的 c++ 类中,我们会使用以下代码来处理打开文件时的错误:

ifstream in;
in.open("foo.txt");
if(in.fail()){
cout << "FAILURE. EXITING..." << endl;
exit(0);
}

现在我正在学习 java,我在使用 try/catch 语句时遇到了麻烦,因为当我创建一个扫描器来读取我的输入文件时,它不是' 在 try 代码块之外识别。 java 中是否有与fail()exit(0) 等效的方法,或者是否有更好的方法?

最佳答案

I'm having trouble using try/catch statements, because when I create a scanner to read my input file, it isn't recognized outside of that 'try' code block.

很好!您不应该在 try block 之外使用它。文件的所有相关处理都应该 try block 中,例如:

try (
InputStream istream = new FileInputStream(/*...*/); // Or Reader or something
Scanner scanner = new Scanner(istream)
) {
// Use `scanner` here
}
// Don't use `scanner` here

(这是使用新的 try-with-resources。)

在上文中,我假设当您说 Scanner 时,您指的是 Scanner 类。

回答您的实际问题:不,这不是 Java 代码中的标准做法。 Java 拥抱异常。

关于java - 在 Java 中是否有 try/catch 的替代方法来打开文件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27528900/

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