无法写入文件

时间:2015-03-24 16:31:02

标签: java bufferedwriter

我已经浏览了这个论坛中的所有相关帖子,并且还用谷歌搜索了但没有找到确切的答案。

运行以下代码时,出现以下错误:

  

构造函数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();  
        }
    }
}

3 个答案:

答案 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.FileWriterjava.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);

  1. 创建文件编写器对象。
  2. FileWriter fr = new FileWriter(f);

    1. 创建缓冲编写器。
    2. BufferedWriter bw = new BufferedWriter(fr);

      4.然后您可以轻松地写入如下文件。

      bw.write("Hello World");

      希望这会对你有所帮助

      记得导入

      java.io.FileWriter; java.io.BufferedWriter; java.io.IOException;

      如果你使用像netbeans这样的ide,那些包将会自动建议。