1 File 类
1.1 概述 java.io.File 是文件和目录路径名的表示 主要用于文件和目录的创建 查找 删除等操作
1.2 构造方法
File(File parent, String child) 根据 parent 抽象路径名和 child 路径名字符串创建一个新 File 实例。
File(String pathname) 通过将给定路径名字符串转换为抽象路径名来创建一个新 File 实例。
File(String parent, String child) 根据 parent 路径名字符串和 child 路径名字符串创建一个新 File 实例。
2 IO 流
2.1 IO概述
把数据的的传输 这种流动 按照流动的方向 以内存为基准 分为input 和output 数据流向内存----》输入流 流出内存就是输出流
java中 I/O操作 在io 包下 进行输入和输出的操作 输入 ----------》i—>读取数据
输出 也叫做写出数据
2.2 IO分类
根据数据的流向 输入流 和输出流
输入流: 把数据从其他设备 读取到内存中
输出流: 把数据从内存写出到其它设备
根据数据类型的分为 字节流 字符流
字节流 以字节为单位 读写数据的流
字符流 以字符为单位 读写数据流
2.3 字节流
一切皆为字节
图片 视屏 以二进制的方式存储 一个一个字节 字节流可以读任何文件
2.4 字节输出流 OutputStream----->FileOutputStream
close();
flush(); 刷新
write(byte[] byte);
FileOutputStream(File file);
FileOutputStream(String string);
1、* File 类的获取功能
- getAbsolutePath() ;返回路径
- getPath()---->将File转成字符串
- getName() 返回文件或者路径的名称
- length() 文件的长度文件夹返回0 文件返回文件字节大小
2、 * File 类的创建和删除功能
-
creatNewFile(); ----->创建空文件 不是文件夹
-
delete(); 删除
-
mkdir(); 创建目录
-
mkdirs();多层
*/
3、* File类 遍历
- list(); —>返回的是String数组 表示该目录下所有子文件
- listFiles()—》返回的File的数组 表示该目录下所有子文件 包含文件地址
4、输出流 FileOutputStream(路径);
FileOutputStream fos = new FileOutputStream(路径);
fos.write(字节数组);
fos.close();关闭
File 类的获取功能
public class Demo03File {
public static void main(String[] args) {
show01();
}
private static void show04(){
File f = new File(“D:\1.jpg”);
File f1 = new File(“D:\qq”);
long length = f.length();
long length1 = f1.length();
System.out.println(length);
System.out.println(length1);
}
private static void show03(){
File f = new File("D:\\IdeaProjects\\lijun\\a.txt");
String name = f.getName();
System.out.println(name);
File f1 = new File("D:\\IdeaProjects\\lijun");
String name1 = f1.getName();
System.out.println(name1);
}
private static void show02(){
File f = new File("D:\\IdeaProjects\\lijun\\a.txt");
File f1 = new File("a.txt");
String path = f.getPath();
String path1 = f1.getPath();
System.out.println(path);
System.out.println(path1);
}
private static void show01(){
File f = new File("D:\\IdeaProjects\\lijun\\a.txt");
File f1 = new File("a.txt");
String absolutePath = f.getAbsolutePath();//该方法获得是绝对路径
String absolutePath1 = f1.getAbsolutePath();
System.out.println(absolutePath);
System.out.println(absolutePath1);
}
}
* File 类的创建和删除功能
-
creatNewFile(); ----->创建空文件 不是文件夹
-
delete(); 删除
-
mkdir(); 创建目录
-
mkdirs();多层
*/
public class Demo04File {
public static void main(String[] args) throws IOException {
show03();
}
//删除 delete
private static void show03(){
File f=new File(“D:\IdeaProjects\fuguo\bobo”);
boolean delete = f.delete();
System.out.println(delete);
}
// 创建文件夹
private static void show02() throws IOException {
File f=new File("D:\\IdeaProjects\\lijun\\ruirui");
boolean mkdir = f.mkdir();
System.out.println(mkdir);
File f1=new File("D:\\IdeaProjects\\lijun\\bobo\\ruiruir\\111\\2222");
File f2=new File("D:\\IdeaProjects\\lijun\\bobo\\ruiruir\\111\\2222\\a.txt");
boolean mkdirs = f1.mkdirs();
System.out.println(mkdirs);
f2.createNewFile();
}
// creatNewFile(); 不能创建文件夹 当文件存在的时候不在创建
private static void show01() throws IOException {
File f1 = new File("D:\\IdeaProjects\\lijun\\1.txt");
boolean newFile = f1.createNewFile();
System.out.println(newFile);
File f2 = new File("D:\\1.txt");
boolean newFile1 = f2.createNewFile();
System.out.println(newFile1);
}
}
* File类 遍历
- list(); —>返回的是String数组 表示该目录下所有子文件
- listFiles()—》返回的File的数组 表示该目录下所有子文件 包含文件地址
*/
public class Demo05File {
public static void main(String[] args) {
show02();
}
private static void show02(){
File f = new File(“C:\Windows”);
File[] files = f.listFiles();
System.out.println(files.length);
for(File ff:files){
System.out.println(ff);
}
}
private static void show01(){
File f = new File(“D:\IdeaProjects\lijun\day01Object\src”);
String[] list = f.list();
for(String fileName:list){
System.out.println(fileName);
}
}
}
输出流 FileOutputStream(路径);
FileOutputStream fos = new FileOutputStream(路径);
fos.write(字节数组);
fos.close();关闭
public static void main(String[] args) throws IOException {
byte []bytes=“HelloWorld”.getBytes();
File file = new File(“E:\aaaaaaa\HelloWorld03.txt”);
boolean newFile = file.createNewFile();
FileOutputStream fos = new FileOutputStream(file);
fos.write(bytes);
fos.close();
}