一. I/O操作的目标:
从数据源当中读取数据,以及将数据写入数据目的地当中
二, 数据的流向以java程序为参照物
三, I/O流可以有三种分类
(1)输入流,输出流
(2)字节流,字符流
(3)节点流,处理流
四,I/O当中的核心类
InputStream , OutputStream
FileInputStream FileOutputStream
五.
InputStream:
主要方法:int read( byte[] b , int off , int len):
len:读取的长度 off: 偏移量,读取到byte[off] 的位置开始
OutputStream:
主要方法: void write(byte[] b ,int off, int len);
off: 从byte[off] 的位置开始写入
具体例子:
准备:先在在f:/work/Test的目录下
创建好from.txt(写好abcd字符串),和to.txt
测试类:Test
实现: 把from.txt的数据写入to.txt中去
//导入IO流的包
import java.io.*;
class Test{
public static void main(String args []){
//声明输入流引用
FileInputStream fis = null;
//声明输出流引用
FileOutputStream fos = null;
try{
//生成代表输入流的对象
fis = new FileInputStream("F:/work/Test/from.txt");
//生成代表输出流的对象
fos = new FileOutputStream("f:/work/Test/to.txt");
//生成一个字节数组
byte[] buffer = new byte[100];
//调用输入流对象的read方法,读取数据
int temp = fis.read(buffer, 0, buffer.length); //temp返回读取进去的个数
//调用输出流对象的write方法,写入数据
fos.write(buffer, 1 , temp); //从下标为1的buffer[1]开始写入,即第二个
String s = new String(buffer);
//调用一个String对象的trim方法去除这个字符串的首尾空格和空字符
s = s.trim();
System.out.println(s);
//打印数据
//for(int i = 0 ; i < buffer.length ; i++){
//System.out.println(buffer[i]);
//}
}catch(Exception e){
System.out.println(e);
}
}
}