【转】java读取本地txt文档
首先为这个txt文件创建一个FileInputStream流mystream,然后新建一个ByteArrayOutputStream流my,然后读取mystream,mystream.read( );然后将数据写入my中,my.write( );讲写入的数据用toBytearray( )转化为数组类型;如果txt文档中有中文,可以用讲转化的数组型数据用String(数据,“GB2312”)解码中文。最后将其输出到屏幕上!
附:
import java.io.*;
public class Stream
{
public static void main(String[] args)
{
try
{
String dirname = "D://java work//工作区";
String myfile = "my java.txt";
File afile = new File(dirname,myfile);
InputStream r = new FileInputStream ( afile );
ByteArrayOutputStream byteout = new ByteArrayOutputStream();
byte tmp [] = new byte [ 256 ];
byte context [];
int i = 0 ;
while ((i = r.read(tmp)) !=- 1 )
{
byteout.write(tmp);
}
context = byteout.toByteArray();
String str = new String(context ,"gb2312");//解码中文
// 分隔行
String stra [] = str.split( " \n " );
for ( int n = 0 ;n < stra.length;n ++ )
{
System.out.println(stra[n] );
}
// System.out.println(str);
} catch (Exception e)
{
System.out.println(e); // TODO: handle exception
}
}
}
从键盘输入:
代码:BufferedReader br=new BufferedReader(
new InputStreamReader(System.in));
String myfile = (String)br.readLine();