那么我有这个问题,我不知道编码有什么问题,
catch (FilenotFoundException e){
system.out.println("File not found");
}
try
{
FileReader freader = new FileReader("MyFile.txt");
}
}
它询问错误是什么?我认为这可能是 e 没有大写是这个原因吗?
try{}块后面应该跟着一个catch {}块或finally{}块,you have reversed it.
像这样使用:-
try {
FileReader freader = new FileReader("MyFile.txt");
} catch (FileNotFoundException e){
System.out.println("File not found");
}
根据 Java 命名约定:-
类名以大写字母开头,所有后续单词也以大写字母开头。所以,FilenotFoundException
应该是FileNotFoundException
而且,system
应该是 -> System
。
一个catch{}
块跟随一个try{}
块,而不是相反。
另外,FilenotFoundException
应该是FileNotFoundException
。我怀疑它会与替代拼写一起编译。正如@Rohit Jain 的回答所示,与system
vs.也是如此。System
从 Java 7 开始:
try( FileReader freader = new FileReader("MyFile.txt"))
{
使用阅读器
}// try
catch( IOException e)
{
e.printStackTrace();
}
应该是其他的。try
其次是catch
。
try
{
FileReader freader = new FileReader("MyFile.txt");
}catch (FileNotFoundException e){
System.out.println("File not found");
}
catch 块应该跟随 try
try {
//code that exception might occur
}
catch(Exception ex) {
//catch the exception here.
}
您的 try 块应该紧跟 catch 或 finally。
try {
//code that exception might occur
}
finally {
//close your resources here
}