您的位置:首页 > 编程语言 > Java开发

java io(一)

2016-04-07 23:54 701 查看
IO分类:

1、根据处理的数类型不同:字节流和字符流。

2、根据流向不同:输入流和输出流。

字节流和字符流的区别:

1、字节流读取的时候,读一个就返回。

字符流用字节流的方式读一个或多个字节,然后去查指定的编码表,将查到的字符返回。

2、字节流可以处理所有类型数据如图片mp3、avi等。

而字符流只能处理字符数据

结论:只要是纯文本数据,都要优先考虑字符流来处理。其他的都要使用字节流。

IO体系,具备的功能就只有两个:读写

字节流的处理方式:

InputStream、OutputStream

字符流的处理方式:

Reader、Writer

读一个文本文件并打印:

FileReader r = new FileReader(new File("c:\\lf.txt"));
char[] cs = new char[500];
int len = 0;
int count = 0;
while((len = r.read(cs))!=-1){
count++;
System.out.println(new String(cs,0,len));
}
r.close();
System.out.println(count);


【缓冲】

缓冲的存在是为了增强流的功能而存在的。所以建立缓冲区的时候首先要有流对象的存在。

其实缓冲内部还是用了流的功能,只不过是把读进来的数据暂时放在数组中存储罢了。

处理字符流的时候,使用的是char数组,在处理字节流的时候,使用的是byte数组

例子:

FileInputStream fis = new FileInputStream(new File("c:\\lf.txt"));
byte[] ss = new byte[1024];
while(true){
int c = fis.read(ss);
if(c == -1){
break;
}else{
System.out.println(new String(ss));
}
}


编码问题

tomcat服务器的默认编码是iso8859-

数据使用了什么样的编码方式进行编码,就需要用什么样的编码方式进行解码。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: