1、创建文件
要使用Java创建文件,可以使用createNewFile()
方法。 此方法返回一个布尔值:如果成功创建了文件,则为true
,如果文件已经存在,则为false
。该方法需要包含在try ... catch
块中。因为如果发生错误(如果由于某种原因而无法创建文件),则会抛出IOException
:
例如:
import java.io.File; // 导入File import java.io.IOException; // 导入IOException public class CreateFile { public static void main(String[] args) { try { File myObj = new File("filename.txt"); if (myObj.createNewFile()) { System.out.println("File created: " + myObj.getName()); } else { System.out.println("File already exists."); } } catch (IOException e) { System.out.println("An error occurred."); e.printStackTrace(); } } }
要在特定目录中创建文件(需要权限),需要指定文件的路径,并使用双反斜杠转义“\
”字符(对于Windows)。在Mac和Linux上,只需编写路径即可,例如:/Users/cjavapy/filename.txt
例如:
File myObj = new File("C:\\Users\\cjavapy\\filename.txt");
2、写文件
写文件使用FileWriter
类及其write()
方法,将一些文本写入我们在上面的示例中创建的文件中。完成写入文件后,注意应使用close()
方法将其关闭。BufferedWriter
提供缓冲写入,提高写入效率,适用于大文件。PrintWriter
支持打印格式化文本(例如,println
)
1)使用 FileWriter
写文件
import java.io.FileWriter; // 导入FileWriter import java.io.IOException; // 导入IOException public class WriteToFile { public static void main(String[] args) { try { FileWriter myWriter = new FileWriter("filename.txt"); myWriter.write("www.cjavapy.com"); myWriter.close(); System.out.println("Successfully"); } catch (IOException e) { System.out.println("An error occurred."); e.printStackTrace(); } } }
2)使用 BufferedWriter 写文件
import java.io.BufferedWriter; import java.io.FileWriter; import java.io.IOException; public class Main { public static void main(String[] args) { try (BufferedWriter writer = new BufferedWriter(new FileWriter("example.txt"))) { writer.write("BufferedWriter写入的内容"); writer.newLine(); // 换行 writer.write("这是第二行"); System.out.println("文件已写入"); } catch (IOException e) { e.printStackTrace(); } } }
3)文件追加写入
如果需要在现有文件末尾追加内容,可以使用 FileWriter
的构造函数传入 true
参数,或者使用 BufferedWriter
。
import java.io.FileWriter; import java.io.IOException; public class Main { public static void main(String[] args) { try (FileWriter writer = new FileWriter("example.txt", true)) { writer.write("\n这是追加的内容"); System.out.println("内容已追加到文件"); } catch (IOException e) { e.printStackTrace(); } } }
相关文档: