File 类的用法和 InputStream, OutputStream 的用法
目录
(一)File类
①File类
A)属性
B)构造方法
(二)字节流(读InputStream、写OutputStream)
(1)InputStream 实现代码
①read()
②read(byte[ ])
③read(byte[ ],int off,int len)
(2)OutputStream 实现代码
①write(int)
②write(byte[ ])
③write(byte[ ],int off,int len)
(一)File类
①File类
A)属性
pathSeparator分隔符(“\” “/”等)
B)构造方法
常用:
File file = new file("D:/...");//这里可以使用绝对路径和相对路径
C)方法
可以返回:父目录文件路径,纯文件名称,文件路径,绝对路径;
可以判断:是否存在,是否是一个目录,是否是一个普通文件,是否成功创建,是否成功删除;
可以:程序退出后删除;
可以返回:目录下的所有文件名;
可以:创建(多级)目录;
可以判断:是否已对文件(文件夹)重命名(/是否移动文件成功)
(二)字节流(读InputStream、写OutputStream)
(1)InputStream 实现代码
①read()
//创建文件流对象,相当于操作系统中,打开文件
InputStream inputStream = new FileInputStream("./test.txt");while(true){//读取一个字节//流末尾c为-1int c = inputStream.read();if(c == -1){break; }System.out.printf("0x%x\n",c);
}
②read(byte[ ])
byte[] bytes = new byte[1024];
//此处的 bytes 为输出型参数
//n 为实际读取到的字节长度
int n = inputStream.read(bytes);//循环打印
③read(byte[ ],int off,int len)
(2)OutputStream 实现代码
-
每次打开文件后,文件都会清空
OutputStream outputStream = new OutputStream("./test.txt");
对应参数:append
//“追加写”
OutputStream outputStream = new OutputStream("./test.txt",true);
-
写入方法
①write(int)
try(OutputStream outputStream = new OutputStream("./test.txt")){outputStream.write(97);//aoutputStream.write(98);//b
}catch(IOException e){e.printStackTrace();
}