,,java中创建、写入文件的5种方式

,,java中创建、写入文件的5种方式

本文主要介绍用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的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。

留言与评论(共有 条评论)
   
验证码: