赞
踩
io流是为了读写文件中的数据
按流向分:输入流:将数据读入程序
输出流:将程序输出到文件
操作单元:字节流:传输字节型的数据(任何数据都能转换为字节)
字符流:传输纯文本的数据
按功能分:节点流:数据从数据源直接到目的地
功能流:提高节点流功能或性能
Inputstream字节输入流 此抽象类是表示字节输入流的所有类的超类。
子类:
FileInputStream 文件字节输入流
ByteArrayInputStream字节数组输入流
AudioInputStream音频输入流
PipedInputStream管道输入流
Outputstream字节输出流 此抽象类是表示输出字节流的所有类的超类。输出流接受输出字节并将这些字节发送到某个接收器。
子类:
ByteArrayOutputStream字节数组输出流
FileOutputStream字节数组输出流
FileInputStream(File file)
通过打开一个到实际文件的连接来创建一个 FileInputStream,该文件通过文件系统中的 File 对象 file 指定。
File src=new File("D:/test.txt");
new FileInputStream(src);
FileInputStream(String name)
通过打开一个到实际文件的连接来创建一个 FileInputStream,该文件通过文件系统中的路径名 name 指定。
new FileInputStream("D:/hehe.txt") ;
void close()
关闭此文件输入流并释放与此流有关的所有系统资源。int read()
从此输入流中读取一个数据字节。int read(byte[] b)
从此输入流中将最多 b.length 个字节的数据读入一个 byte 数组中。int read(byte[] b, int off, int len)
从此输入流中将最多 len 个字节的数据读入一个 byte 数组中。long skip(long n)
从输入流中跳过并丢弃 n 个字节的数据。public static void main(String[] args) throws IOException {
//1.指明数据源文件的位置
File src=new File("D:/test.txt");
//2.选择流
InputStream is=new FileInputStream(src);
//3.读入
byte[] car=new byte[1024];
int len=-1;
while((len=is.read(car))!=-1){
System.out.println(new String(car,0,len));
}
//4.关闭
is.close();
}
FileOutputStream(File file)
创建一个向指定 File 对象表示的文件中写入数据的文件输出流。
File src=new File("D:/test.txt");//输出流文件本身不存在,系统会自动创建,路径不存在,需要自己手动创建
new FileOutputStream(src);
FileOutputStream(String name)
创建一个向具有指定名称的文件中写入数据的输出文件流。
new FileOutputStream("D:/test.txt");
FileOutputStream(String name, boolean append)
创建一个向具有指定 name 的文件中写入数据的输出文件流。
new FileOutputStream("D:/test.txt",true);
//true:在源文件后追加输出
//false:覆盖原文件内容输出
void write(byte[] b)
将 b.length 个字节从指定的 byte 数组写入此文件输出流。void write(byte[] b, int off, int len)
将指定 byte 数组中从偏移量 off 开始的 len 个字节写入此文件输出流。abstract void write(int b)
将指定的字节写入此文件输出流。void close()
关闭此文件输出流并释放与此流有关的所有系统资源。void flush()
刷新此输出流并强制写出所有缓冲的输出字节。public static void main(String[] args) { //1.建立联系2.创建流 OutputStream os=null; try { os=new FileOutputStream("D:/test.txt",true); String str="ABC"; byte[] car=str.getBytes(); //3.写出 os.write(car); //4.刷出 os.flush(); } catch (FileNotFoundException e) { e.printStackTrace(); } catch (IOException e) { // TODO Auto-generated catch block e.printStackTrace(); } finally{ //关闭 try { if(os!=null){//防止空指针异常 os.close(); } } catch (IOException e) { e.printStackTrace(); } } }
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。