Java输入输出流总结

来源:互联网 发布:程序员大爷 gif 编辑:程序博客网 时间:2024/05/20 20:56

一:IO(Input Output)总结:

1.IO流用于处理设备之间的数据传输。

2.Java对数据的操作是通过流的方式。

3.流按照操作数据分为两种:①字节流;②字符流。

二:

Java中输入输出流主要涉及到的包是Java.io,Java中最重要的就是5个类和1个接口。5个类是:InputStream、OutPutStream、File类、Reader、Writer,接口是:Serialzable接口。

三:IO流常用基类:

1、字节流的抽象基类:①InputStream;②OutPutStream。

2、字符流的抽象基类:Reader;②Writer

3、由这四个类派生出来的子类(File类),名称都是以其父类名作为子类的后缀。如:InputStream的子类——FileInputStream;Reader的子类——FileReader。


输入输出流例子:把字符串"1,+,2,+,3,+,4,+,5,-,6,-,7,+,8,-,9"写入D盘,并且计算字符串的值,在控制台打印。

package test;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileOutputStream;
public class TestOut {
public static void main(String[]args){
/*
* 1.创建文件对象
*/
File file=new File("d:/","work.txt");
try {
//2/写文件,输出流
FileOutputStream out=new FileOutputStream(file);
String st="1,+,2,+,3,+,4,+,5,-,6,-,7,+,8,-,9";
//创建byte型数组
byte str[]=st.getBytes();
out.write(str);//将数组中信息写入到文件中
out.close();//将流关闭

//3.读文件,输入流
FileInputStream in=new FileInputStream(file);
//每次读取字节的长度
byte byt[]=new byte[1024];
int len=in.read(byt); // len的值是str数组的长度
//将指定byte数组中从偏移量开始到1024个字节写入此输出流(也就是一次性读取字节)
String a=new String(byt,0,len);
System.out.print("输入文件中的字符串len:"+len+"\n");
System.out.print("输入文件中的字符串:"+a+"\n");
/*
* 分割1+,2+,3+,4+,5-,6-,7+,8-,9   成   1+2+3+4+5-6-7+8-9
*/
String[] aa= a.split(",");
for(String s: aa){
System.out.print(s);
}
System.out.println("");
/**
* 计算字符串:1+2+3+4+5-6-7+8-9 的值
*/int sun=0;
for(int i=0;i<aa.length;i++){
if("+".equals(aa[i])){
sun=sun+Integer.parseInt(aa[i+1]);
}else if("-".equals(aa[i])){
sun=sun-Integer.parseInt(aa[i+1]);
}else if (Integer.parseInt(aa[i])==1) {
sun=Integer.parseInt(aa[i]);
}
}
System.out.println("打印字符串sun的值"+sun);
in.close();

} catch (Exception e) {
e.printStackTrace();
}
}

}


1 0
原创粉丝点击