Java 希望编写的代码不会引发异常吗
我有下面的代码Java 希望编写的代码不会引发异常吗,java,java-8,Java,Java 8,我有下面的代码 import java.io.*; public class FileTest { public static void main(String[] args) throws IOException { WriteLinesToFile("miss.txt","This is a special file"); } public static void WriteLinesToFile(String outputFileName, Str
import java.io.*;
public class FileTest {
public static void main(String[] args) throws IOException {
WriteLinesToFile("miss.txt","This is a special file");
}
public static void WriteLinesToFile(String outputFileName, String lineConverted) throws IOException {
File f = new File(outputFileName);
if (f.createNewFile()) {
System.out.println("File is created!");
FileWriter writer = new FileWriter(f);
writer.write(lineConverted);
writer.close();
} else {
System.out.println("File already exists.");
FileWriter writer = new FileWriter(f);
writer.write(lineConverted);
writer.close();
}
}
}
我需要同样的逻辑,没有例外。有人能告诉我怎么做吗?你可以用try{}catch(IOException e){}处理你的异常 但是处理异常是很重要的,因为否则你的程序会做一些事情,但不是你想要的
import java.io.*;
public class FileTest {
public static void main(String[] args)
{
writeLinesToFile("miss.txt", "This is a special file");
}
public static void writeLinesToFile(String outputFileName, String lineConverted){
File f = new File(outputFileName);
try {
if (f.createNewFile()) {
System.out.println("File is created!");
FileWriter writer = new FileWriter(f);
writer.write(lineConverted);
writer.close();
} else {
System.out.println("File already exists.");
FileWriter writer = new FileWriter(f);
writer.write(lineConverted);
writer.close();
}
}
catch(IOException e){
//Handle your error
}
}}
但是您根本不能删除异常,因为在java中处理文件总是抛出异常(例如,如果找不到文件)。那么您有一段代码抛出异常,因为某个文件有问题?你可能应该。。。修复问题,而不是尝试不引发异常。另外请注意,按照惯例,方法以非大写字母开头,因此它应该是
WriteListFile
。你说的“不引发异常”是什么意思?您的意思是要避免方法中的throws
子句?缩进发生了什么?代码是否引发异常?或者正如@Kayaman所提到的,您不喜欢在方法声明中添加抛出IOException
?如果是后者,请阅读关于如果由于各种原因无法写入文件,您希望发生什么而不是引发异常?顺便说一句,我不认为有任何方法可以在不发生异常的情况下写入文件。