java缓冲区怎么写_java缓冲区是什么意思?如何操作?

Java编程语言内容复杂,知识点繁多。今天主要为大家介绍一下,java缓冲区是什么意思,以及如何对它进行文字读写操作。

首先,我们需要知道缓冲区的基本概念。电脑内存分成5个区,他们分别是堆、栈、自由存储区、全局/静态存储区和常量存储区。接下来我们分别看一下各区的概述。第一个是栈,它是那些由编译器在需要的时候分配,在不需要的时候自动清除的变量的存储区。它里面的变量包含局部变量、函数参数等。

第二个是堆,它是由new分配的内存块,编译器不会去管它们的释放,它们被我们的应用程序控制,一般一个new就要对应一个delete。如果程序员没有释放掉,那么在程序结束后,操作系统会自动回收。

第三个是自由存储区,就是那些由malloc等分配的内存块,它和堆是十分相似的,不过它是用free来结束自己的操作的。

第四个是全局/静态存储区。全局变量和静态变量被分配到同一块内存中,在以前的C语言中,全局变量又分为初始化的和未初始化的,但是在C++里面没有这个区分了,他们共同占用同一块内存区。

最后一个是常量存储区,这是一块比较特殊的存储区,他们里面存放的是常量,它是不允许修改的。

总而言之,电脑缓冲区就是预留下来的作为急用的,是暂时置放输出或输入资料的内存。

那么,我们应该如何对缓冲区进行操作呢?

首先,当我们读写文本文件的时候,比较便捷的方法是采用Reader。比如FileReader,InputStreamReader和BufferedReader。其中最重要的类是InputStreamReader,它是字节转换为字符的桥梁。你可以在构造器重指定编码的方式,如果不指定的话将采用底层操作系统的默认编码方式,例如GBK等。使用FileReader读取文件:FileReader fr = new FileReader("ming.txt");

int ch = 0;

while ((ch = fr.read()) != -1)

{

System.out.print((char) ch);

}

其中read()方法返回的是读取的下个字符。当然你也可以使用read(char[] ch,int off,int

length)。事实上在FileReader中的方法都是从InputStreamReader中继承过来的。read()方法是比较耗费时间的,如果为了提高效率我们可以使用BufferedReader对Reader进行包装,方法是一行一行的读取文本,使用readLine()方法:BufferedReader br = new BufferedReader(new InputStreamReader(new FileInputStream("ming.txt")));

String data = null;

while ((data = br.readLine()) != null)

{

System.out.println(data);

}

以上就是关于java缓冲区的基本原理以及操作方法,想要了解更多关键java基础,敬请关注奇Q工具网。

推荐阅读:

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值