流按照方向分,分为输入流和输出流。是以内存为参照物。将数据从数据源读取到内存,为输入流,也称为读取流。将数据从内存中写入数据源,为输出流,也称为写入流。
流的类型分为:字节流、字符流(文本)和对象流(对象)。
由于计算机采用二进制。所以数据的传输都是以字节流为单位传输。所以,午论那种流。其本质都是字节流。不过,为了方便字符数据和对象数据的传输。可以在字节流基础上进行封装,形成字符流和对象流。
InputStrean和OutputStrean是字节流的两个父类。这个两个类提供了read()和write()两个方法。有子类根据自己数据源的特点分别做实现。
流的操作的步骤:
1.建立流
InputStream input =null;
OutputStream outpur =null;
//获取文件的路径
input =new FileInputStream("");
//文件放在什么地方
output =new FileOutputStream("");
2.操作流
byte [] by =new byte[1024];
int len =0;
while((len =input.read(by))!=-1){
output.write(by,0,len);
}
3.关闭流
谁后操作,谁就先关闭流
output.close();
inputDoundExcrption
当作文件操作是,如果文件不存在。读取流会抛出FileNotDoundExcrption异常。写入流会新建
当写入流当文件不存在时,会创建新文件。但前提是,文件所在的目录不需存在。否则也会抛出FileNotDoundExcrption
reader 和witer 是字符流的两个父类。可以直接对字符串进行操作。
流的类型分为:字节流、字符流(文本)和对象流(对象)。
由于计算机采用二进制。所以数据的传输都是以字节流为单位传输。所以,午论那种流。其本质都是字节流。不过,为了方便字符数据和对象数据的传输。可以在字节流基础上进行封装,形成字符流和对象流。
InputStrean和OutputStrean是字节流的两个父类。这个两个类提供了read()和write()两个方法。有子类根据自己数据源的特点分别做实现。
流的操作的步骤:
1.建立流
InputStream input =null;
OutputStream outpur =null;
//获取文件的路径
input =new FileInputStream("");
//文件放在什么地方
output =new FileOutputStream("");
2.操作流
byte [] by =new byte[1024];
int len =0;
while((len =input.read(by))!=-1){
output.write(by,0,len);
}
3.关闭流
谁后操作,谁就先关闭流
output.close();
inputDoundExcrption
当作文件操作是,如果文件不存在。读取流会抛出FileNotDoundExcrption异常。写入流会新建
当写入流当文件不存在时,会创建新文件。但前提是,文件所在的目录不需存在。否则也会抛出FileNotDoundExcrption
reader 和witer 是字符流的两个父类。可以直接对字符串进行操作。