java之IO流操作文件独写

File类:涉及到文件,目录的操作就需要用到File类

要操作文件,就要先获取一个文件对象

构造函数:File file = new File(指定一个文件路径);

作用:根据文件路径创建了一个虚拟的文件对象

创建文件夹:

  判断文件后者目录是否存在:file.exists()

 


package com.my.packge5;

import java.io.File;
import java.io.IOException;

public class FileDemo {
//直接抛出异常了
public static void main(String[] args) throws IOException {
//判断路径是否存在
String path1 = "D:/a/b";
String path2 = "D:/a/b/c.txt";
//创建一个file对象
File dir = new File("D:/a/b");
//调用方法判断路径是否存在
// System.out.println(file2.exists());
//创建目录
dir.mkdirs();
File file2 = new File(path2);
//创建文件
file2.createNewFile();

//判断是否是一个目录
System.out.println(file2.isDirectory());

}
}
 

IO流其实就是操作文件读写的一门技术
I:in 读取文件内容到流对象
O:out 写文件内容到流对象

分类
  字节流——一般是操作文本文件,图片,视频,音频文件的读写,下面是常用的类和子类
InputStream:FileInputStream
OutputStream:FileOutputStream

InputStream和
OutputStream都是抽象方法,意味着这个抽象类中的一些实现方法是可以被所有子类都共同调用的
类:FileInputStream,中的read(),方法是读取数据到输入流中,返回实际读取数据大小size
类:FileOutputStream,中的write(int size),是将读到的数据大小写到输出流中



  字符流——一般是操作文本文件的读写
 reader:BufferedReader
 writer:BufferedWriter


package com.my.packge5;

import java.io.*;

public class Filecopy {
    public static void main(String[] args) throws IOException {
        String frompath = "C:\\Users\\admin\\Desktop\\123.jpg";
        String topath = "C:\\Users\\admin\\Desktop\\321.jpg";
        InputStream inputStream = new FileInputStream(new File(frompath));
        OutputStream outputStream = new FileOutputStream(new File(topath));
        int size = 0; //size是字节数,可以通过read方法读取字节数
        //(size=inputStream.read()) != -1  ,read()这个方法是读不到数据时就会返回-1,不等于-1就说明还能读取到数据
        while ((size=inputStream.read()) != -1){
                outputStream.write(size);
        }
        if(inputStream!=null){
                inputStream.close();
        }
        if(outputStream!=null){
                outputStream.close();
        }
        System.out.println("finish");
    }
}

 







 

 



 


 


 


 

 
posted @ 2021-04-06 14:13  小boboa  阅读(89)  评论(0编辑  收藏  举报