本文主要介绍用java创建和编写文件的五种方法,帮助你更好地理解和学习Java io。感兴趣的朋友可以了解一下。
用java创建和编写文件有很多种方法。你真的总结过吗?在这里,我帮大家总结五种用java创建文件的方法。
Files.newBufferedWriter(Java 8)
files . write(Java 7推荐)
版画作者
File.createNewFile
输出stream.write (byte [] b)管道流
其实不止这五种,通过管道流程的排列组合,其实有很多种,但笔者总结的这五种可以说是最常用的,也是最好的做法。
前提小知识
以前我在写涉及“闭流”和“闭连接”的技术文章时,经常有人留言:“我写技术文章连close()都不知道。”这条信息我遇到过无数次!
在本文中,带资源尝试语法被广泛使用。这个语法真的很长,但是还是有朋友不知道(知道就跳过)。我想说下面的管道流不是我没关,而是自动关了。
尝试(管道流程、连接等。实现可关闭接口的类){
//这里使用类对象操作
}
//使用try()来包含它,这样就不用在finally中手动转到Object.close(),它会自动关闭。
1.Java 8 Files.newBufferedWriter
java8提供的NewBufferedWriter可以创建文件并向其中写入数据。您可以通过附加写入模式将内容附加到文件中。
@测试
void testCreateFile1()引发IOException {
string fileName=' D:\ \ data \ \ test \ \ new file . txt ';
Path path=Paths.get(文件名);
//使用newBufferedWriter创建文件并写入
//这里使用try-with-resources方法关闭流,不需要手动关闭。
try (BufferedWriter编写器=
Files.newBufferedWriter(路径,标准字符集。UTF_8)) {
writer . write(' Hello World-创建一个文件!');
}
//追加写入模式
try (BufferedWriter编写器=
Files.newBufferedWriter(路径,
标准字符集。UTF_8,
StandardOpenOption。追加)){
writer . write(‘你好世界-兄弟字母表!');
}
}
2.Java 7文件. write
作者推荐使用下面的方法Files.write。它的语法很简单,底层用Java NIO实现。提供了相同的追加写入模式来将数据追加到现有文件类型。这种方法是实现简单的文本文件读写最方便快捷的方法。
@测试
void testCreateFile2()引发IOException {
string fileName=' D:\ \ data \ \ test \ \ new file 2 . txt ';
//JDK 1.7以来提供的方法
//使用Files.write创建一个文件并编写它
Files.write(Paths.get(fileName),
你好世界-创建一个文件!getBytes(StandardCharsets。UTF _ 8));
//追加写入模式
Files.write(
Paths.get(文件名),
你好世界-兄弟字母表!getBytes(StandardCharsets。UTF_8),
StandardOpenOption。追加);
}
3. PrintWriter
PrintWriter是一种古老的创建和写入文件的方式,从JDK1.5开始就有了,它有以下特点:PrintWriter的println方法可以逐行写入文件。
@测试
void testCreateFile3()引发IOException {
string fileName=' D:\ \ data \ \ test \ \ new file 3 . txt ';
//自JSD 1.5以来就存在的方法
try (PrintWriter writer=新的PrintWriter(文件名,“UTF-8”){
writer . println(' Hello World-创建一个文件!');
writer . println(' Hello World-兄弟字母表!');
}
//Java 10已经改进,支持使用StandardCharsets来指定字符集。
/* try(PrintWriter writer=new PrintWriter(文件名,StandardCharsets。UTF_8)) {
writer.println('第一行!');
writer.println('第二行!');
} */
}
4. File.createNewFile()
createNewFile()方法的功能比较纯粹,除了创建文件没有文件写入。True表示文件成功,false表示文件已经存在。可以配合FileWriter完成文件写入操作。
@测试
void testCreateFile4()引发IOException {
string fileName=' D:\ \ data \ \ test \ \ new file 4 . txt ';
File file=新文件(文件名);
//返回true表示文件成功
//false表示文件已经存在。
if (file.createNewFile()) {
System.out.println('文件创建成功!');
}否则{
System.out.println('文件已经存在,不需要重复创建');
}
//使用FileWriter写入文件
try(FileWriter writer=new FileWriter(file)){
writer . write(' Hello World-创建一个文件!');
}
}
5.最原始的管道流方法
最原始的方法是使用管道流嵌套的方法,但我认为这种方法是永恒的,使用起来非常灵活。如果要添加Buffer buffer,可以嵌套一个BufferedWriter,如果要将java对象写入文件,可以嵌套一个ObjectOutputStream。但归根结底,我们需要使用FileOutputStream。
@测试
void testCreateFile5()抛出IOException {
string fileName=' D:\ \ data \ \ test \ \ new file 5 . txt ';
try(file output stream fos=new file output stream(fileName);
output streamwriter OSW=new output streamwriter(fos);
BufferedWriter bw=新buffered writer(OSW);){
bw . write(' Hello World-创建一个文件!');
bw . flush();
}
}
以下是用java创建和编写文件的五种方法的细节。关于用Java创建和编写文件的更多信息,请关注我们的其他相关文章!
郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。