最近文件操作較多,但大多數(shù)都是一行一行地讀取,每一行是一條新聞。經(jīng)常用的代碼是這樣的:InputStreamis=null;try{is=newFileInputStream(textPath);BufferedReaderreader=newBufferedReader(newInputStreamReader(is,"UTF-8"),512);//讀取一行,存儲(chǔ)于字符串列表中for(Stringline=reader.readLine();line!=null;line=reader.readLine()){line=line.trim();//dosomethinghere}}catch(FileNotFoundExceptionfnfe){fnfe.printStackTrace();}catch(IOExceptionioe){ioe.printStackTrace();}finally{try{if(is!=null){is.close();is=null;}}catch(IOExceptione){e.printStackTrace();}}當(dāng)dosomething變得很龐大時(shí),這try語句塊就變得有點(diǎn)臃腫。是否能存在這樣的一個(gè)文件讀取類,就像Iterator迭代器一樣,使用hasNext()和next()遍歷文件中的所有行,而將異常處理等全部隱藏起來?還是有什么其它更加優(yōu)雅的方法?
如何優(yōu)雅地讀取文件中的每一行?
牧羊人nacy
2019-04-09 20:24:34