java中br.readLine与 br.read的用法有什么区别??

 我来答
magic_84
推荐于2017-09-16 · TA获得超过493个赞
知道小有建树答主
回答量:211
采纳率:0%
帮助的人:52.8万
展开全部
read方法
功能:读取单个字符。
返回:作为一个整数(其范围从 0 到 65535 (0x00-0xffff))读入的字符,如果已到达流末尾,则返回 -1

readLine方法
功能:读取一个文本行。通过下列字符之一即可认为某行已终止:换行 ('\n')、回车 ('\r') 或回车后直接跟着换行。
返回:包含该行内容的字符串,不包含任何行终止符,如果已到达流末尾,则返回 null
追问
这两个方法可不可以换着用?当我只写入一个数字是为什么用read()会出错??谢谢……
追答
报错?请发送错误信息
为了帮助理解我写了一个测试类,请参照

import java.io.BufferedReader;
import java.io.FileNotFoundException;
import java.io.FileReader;
import java.io.IOException;

public class T0517 {
public static void main(String[] args) {
FileReader input;
try {
input = new FileReader("c:/a.txt");
BufferedReader br = new BufferedReader(input);

for (int i = 0; i < 10; i++) {
System.out.println("read=" + br.read());
// System.out.println("readline=" + br.readLine());
}
} catch (FileNotFoundException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
}
}

=================================
我在C盘根目录下放入文件a.txt 里面内容有3行
a
1
123
===========使用read测试(直接执行我的代码)==================
read=97
read=13
read=10
read=49
read=13
read=10
read=49
read=50
read=51
read=-1

说明:返回的数字是字符的char型码,
97=[a] ;49=[1];
50=[2];51=[3];
13=[回车];10=[换行];
-1=[文件到底下面没有内容就返回-1
总结:read返回文件中所有内容的char型码
===========使用readline测试(代码中注释掉那句,并把read注释掉执行)===========
readline=a
readline=1
readline=123
readline=null
readline=null
readline=null
readline=null
readline=null
readline=null
readline=null
说明:很明显是取文件中每一行的内容输出
最后,两个方法因为返回值不同,所以基本不会换着用,readline比较多用,因为方便,read用的相对少,因为要得到可读的内容,需要转码.
cool_cool_ya
2011-05-13 · TA获得超过1073个赞
知道小有建树答主
回答量:694
采纳率:0%
帮助的人:455万
展开全部
readline有缓存,大数据效率好,read速度快,处理小数据量效率好!
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
浩浩hh2010
2011-05-13
知道答主
回答量:7
采纳率:0%
帮助的人:0
展开全部
br.readLine()是用来读取整行的内容
br.read()读取一个字符或一个字节
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
cuankai86
2011-05-13 · TA获得超过204个赞
知道答主
回答量:318
采纳率:0%
帮助的人:0
展开全部
while((t=br.readLine())!=null){ //在这里读出一行到t,但没有用 只要理解这个用法百分百写不出死 仔细看一下两种写法有什么区别 都是取值
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
cai_love_feng
2011-05-13 · TA获得超过998个赞
知道小有建树答主
回答量:416
采纳率:100%
帮助的人:287万
展开全部
readLine一次取出一行数据
read取出一个字符
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(5)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式