如何从bufferreader reader.readline 获取特定编码的字符串
发布网友
发布时间:2023-09-17 20:57
我来回答
共1个回答
热心网友
时间:2024-08-09 04:00
可以自定义一个类中包含和readLine原理一样的方法
来模拟一下BuffreedReader*/publicclassBufferReader {publicstaticvoidmain(String[] args)throwsIOException{
FileReader fr=newFileReader("c:tzh.txt");MyBufferedReader mybuf=newMyBufferedReader(fr);
String line=null;while((line=mybuf.myReadLine())!=null){System.out.println(line);}mybuf.myClose();}}classMyBufferedReader{privateFileReader r;
MyBufferedReader(FileReader r){this.r=r;};//可以一次读一行数据的方法publicString myReadLine(){
StringBuilder sb=newStringBuilder();intch=0;try{while((ch=
r.read())!=-1){if(ch=='\r')continue;if(ch=='\n')break;//应该是break,本身该方法就只是一行一行的读取,当读取到换行符时,说明已到一行了,不该再继续读下去,所以应使用“break;”else
sb.append((char)ch);}}catch(IOException e) {
e.printStackTrace();}if(sb.length()!=0)returnsb.toString();returnnull;}publicvoidmyClose(){try{