我已经浏览了这个论坛中的所有相关帖子,并且还用谷歌搜索了但没有找到确切的答案。
运行以下代码时,出现以下错误:
构造函数BufferedWriter(FileWriter)未定义
构造函数FileWriter(String)未定义
public class FileWriter {
public static void main(String[] args) {
BufferedWriter f = null;
try
{
f = new BufferedWriter(new FileWriter("C:\\A.txt"));
f.write("Hello World");
}
catch(IOException e)
{
System.out.println(e);
}
finally
{
f.close();
}
}
}
答案 0 :(得分:3)
我想你想使用java.io.FileWriter
类的java,但你重新定义它。您可以将您的课程重命名为更有意义的其他内容。
您必须导入已使用过的类,例如BufferedWriter
。这就是你得到未定义错误的原因。
最好在结束前检查作家f
是否为null
:
import java.io.FileWriter;
import java.io.BufferedWriter;
import java.io.IOException;
public class FileWriterExample {
public static void main(String[] args) {
BufferedWriter f = null;
try {
f = new BufferedWriter(new FileWriter("C:\\A.txt"));
f.write("Hello World");
}
catch(IOException e) {
System.out.println(e);
}
finally {
if (f != null)
f.close();
}
}
}
答案 1 :(得分:1)
您的班级名为FileWriter
,与java.io.FileWriter
的名称冲突。将您的类重命名为其他内容,然后显式导入java.io.FileWriter
和java.io.BufferedWriter
类。
import java.io.FileWriter;
import java.io.BufferedWriter;
我还建议使用更现代的成语:try-with-resources,它会自动为你关闭作家。它更干净,更清洁。
public class Example {
public static void main(String... args) throws Exception {
try (BufferedWriter writer = new BufferedWriter(new FileWriter("C:\\A.txt")) {
writer.write("Hello World");
}
}
}
答案 2 :(得分:0)
使用这些步骤。这是使用缓冲编写器的正确而简单的方法。
1.创建文件对象。
File f = new File(C://A.txt);
FileWriter fr = new FileWriter(f);
BufferedWriter bw = new BufferedWriter(fr);
4.然后您可以轻松地写入如下文件。
bw.write("Hello World");
希望这会对你有所帮助
记得导入
java.io.FileWriter;
java.io.BufferedWriter;
java.io.IOException;
如果你使用像netbeans这样的ide,那些包将会自动建议。