美文网首页
java7新特性4——快速读取文件

java7新特性4——快速读取文件

作者: 不迷失 | 来源:发表于2017-04-01 20:28 被阅读310次

java7快速读写文件

1f2f7374e1990b4bb551fd141bc4a53d

1.打开文件

Java 7可以直接用带缓冲区的读取器和写入器或输入输出流(为了和以前的Java I/O代码兼容)打开文件。下面的代码演示了Java 7如何用Files.newBufferedReader方法打开文件并按行读取其中的内容。

BufferedWriter writer=Files.newBufferedWriter(path,Charset.forName("utf-8"))

注意编码的设置,以防乱码。

打开一个用于写入的文件也很简单。 注意StandardOpenOption.WRITE选项的使用,这是可以添加的几个OpenOption变参之一。它可以确保写入的文件有正确的访问许可。其他常用的文件打开选项还有READ和APPEND。

BufferedWriter writer=Files.newBufferedWriter(path,Charset.forName("utf-8"),StandardOpenOption.APPEND);
      <!-- more -->

2.简化读取和写入 辅助类Files有两个辅助方法,用于读取文件中的全部行和全部字节。也就是说你没必要再用while循环把数据从字节数组读到缓冲区里去。

完整示例代码

package java7;

import java.io.BufferedWriter;
import java.io.IOException;
import java.nio.charset.Charset;
import java.nio.file.*;
import java.util.List;

/**
 * Created by xieqiang on 2017/3/30.
 */
public class QuickReadAndWrite {

    public static void main(String[] a) throws IOException {
        Path path= Paths.get("/Users/xieqiang/test.txt");
        try(
            //如果文件存在则直接打开,否则创建文件    
            BufferedWriter writer=Files.newBufferedWriter(path,Charset.forName("utf-8"));
            
            //可以指定打开文件的模式,这里表示追加文件
            //BufferedWriter writer=Files.newBufferedWriter(path,Charset.forName("utf-8"),StandardOpenOption.APPEND);
        ) {
            writer.write("hello,java7,我是不迷失");
            writer.newLine();
            writer.write("test");
            System.out.println("ok");
        }
        

        List<String> lines= Files.readAllLines(path);
        System.out.println(lines);
    }
}

--

@不迷失|知识改善生活

专注技术研究与视频教学,分享有价值的技术与经验,关注程序员的发展!

--
@不迷失技术博客

微信公众号:java技术(javajidi_com)

技术交流群:245130488

--

教学视频

QQ课堂

百度传课

相关文章

  • java7新特性4——快速读取文件

    java7快速读写文件 1.打开文件 Java 7可以直接用带缓冲区的读取器和写入器或输入输出流(为了和以前的Ja...

  • Java7新特性及使用

    Java7新特性及使用 新特性列表 以下是Java7中的引入的部分新特性。 switch支持String try-...

  • java IO 读取数据

    java IO 读取数据 提供集中读取数据的方法 java7 读取文件的API

  • Java11的新特性

    Java语言特性系列 Java5的新特性 Java6的新特性 Java7的新特性 Java8的新特性 Java9的...

  • Java15的新特性

    Java语言特性系列 Java5的新特性 Java6的新特性 Java7的新特性 Java8的新特性 Java9的...

  • Java12的新特性

    Java语言特性系列 Java5的新特性 Java6的新特性 Java7的新特性 Java8的新特性 Java9的...

  • java7新特性6——随机读写文件

    java7允许我们随机访问文件 所谓随机访问就是允许我们不按照顺序的访问文件的内容,这里的访问包括读和写。 要随机...

  • java7新特性5——监听文件变化

    要实现监听文件的变更然后马上做出响应,在Java7之前,除了不断的循环似乎没什么好办法,而且实现也很麻烦。Java...

  • 带你快速浏览Xcode 9新特性

    带你快速浏览Xcode 9新特性 带你快速浏览Xcode 9新特性

  • java7新特性2——IO Path

    虽然现在都使用Java8了,但是Java7的新特性你是否都知道了呢? Java7中重大的变更之一是新的IO及NIO...

网友评论

      本文标题:java7新特性4——快速读取文件

      本文链接:https://www.haomeiwen.com/subject/qikwottx.html