读书人

[Java SE] JAVA.IO 有关-第二篇(读取

发布时间: 2012-10-28 09:54:44 作者: rapoo

[Java SE] JAVA.IO 相关--第二篇(读取TXT)

上篇说道不用File,而是用getResourceAsStream()来读取文件

?

下面是一个在res资源文件夹下读取某一resource.txt文件的DEMO

?

?

package com.japher.j2se.InputStream;import java.io.BufferedReader;import java.io.IOException;import java.io.InputStream;import java.io.InputStreamReader;/** *  * @author liujie,sd4886656@163.com * */public class TestInputStream {public static void main(String [] art){InputStream in  = Reader.getInstance().getResourceAsStream("/resource.txt");if(in == null)throw new RuntimeException("read error");try {System.out.println(Reader.asString(in));} catch (IOException e) {e.printStackTrace();}}}class Reader{private static Reader instance;/*保持单例*/public static Reader getInstance(){if(instance == null)instance = new Reader();return instance;}/*读取为InputStream*/public synchronized InputStream getResourceAsStream(String path){return this.getClass().getResourceAsStream(path);}/*将InputStream转换为String*/public static String asString(InputStream in) throws IOException{BufferedReader br = new BufferedReader(new InputStreamReader(in, "UTF-8"));        StringBuffer buf = new StringBuffer();        String line;        while (null != (line = br.readLine())) {            buf.append(line).append("\n");        }        return buf.toString();}}

读书人网 >编程

热点推荐