FileOutputStream 不显示 FileNotFoundException
FileOutputStream doesn't show FileNotFoundException
对于FileOutputStream
,它会抛出一个FileNotFoundException
如果文件不存在,但它会创建 如果可以的话。
我的项目根目录中没有 Sample.txt
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
public class Main {
public static void main(String[] args) {
try {
FileOutputStream s= new FileOutputStream("Sample.txt");
} catch (FileNotFoundException e) {
System.out.println("File not Found");
}
}
}
问题是:
- 我无法从
Terminal
中看到 "File Not Found" 的输出。这是怎么发生的?
谢谢
您可以先将 Sample.txt 设置为文件,然后使用 .canWrite()
检查它是否存在
你仍然需要在 FileOutputStream 周围放置一个 try/catch,但它永远不应该进入 catch 块。
import java.io.File;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
public class test {
public static void main(String[] args) {
File f = new File("Sample.txt");
if (!f.exists()) {
System.out.println("File not Found");
}
else {
try {
FileOutputStream s = new FileOutputStream(f);
} catch (FileNotFoundException e) {}
}
}
}
对于FileOutputStream
,它会抛出一个FileNotFoundException
如果文件不存在,但它会创建 如果可以的话。
我的项目根目录中没有 Sample.txt
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
public class Main {
public static void main(String[] args) {
try {
FileOutputStream s= new FileOutputStream("Sample.txt");
} catch (FileNotFoundException e) {
System.out.println("File not Found");
}
}
}
问题是:
- 我无法从
Terminal
中看到 "File Not Found" 的输出。这是怎么发生的?
谢谢
您可以先将 Sample.txt 设置为文件,然后使用 .canWrite()
检查它是否存在你仍然需要在 FileOutputStream 周围放置一个 try/catch,但它永远不应该进入 catch 块。
import java.io.File;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
public class test {
public static void main(String[] args) {
File f = new File("Sample.txt");
if (!f.exists()) {
System.out.println("File not Found");
}
else {
try {
FileOutputStream s = new FileOutputStream(f);
} catch (FileNotFoundException e) {}
}
}
}