file类:一个1file类的对象可以表示具体的文件类或目录
对象输入输出流:把Java中的对象输出到文件中,从文件中把对象输入到程序中
数据存储在对象中,对象在内存中存储,程序运行结束,会造成数据的丢失(对象销毁)
file的相关方法
import java.io.File;
import java.util.Date;
public class filedemo1 {
/*
一个file类的对象,可以表示计算机硬盘上一个具体的目录
通过file类的对象,来获取文件、目录的相关信息(例如时间,是否可写...)但是不能读取文件中的内容
*/
public static void main(String[] args) {
File f=new File("D:/jianmo/src/Angle.java");//表示D盘中的a文件夹
File f1=new File("D:/day13");
System.out.println(f1.exists());//判断是否存在此文件
System.out.println(f.getAbsoluteFile());//获取文件的绝对地址
System.out.println(f1.getAbsoluteFile());
System.out.println(f1.isFile());//判断是否为文件
System.out.println(f.getName());//返回文件名
System.out.println(f.getParent());//返回文件的上一级
System.out.println(f.canRead());//判断是否可读
System.out.println(f.lastModified());//返回1970到现在的时间
System.out.println(new Date(f.lastModified()));
System.out.println(new Date(f1.lastModified()));
}
}
方法及介绍
从数据流的编码格式分为 字符与字节流
按照数据的传输方向分为输入流(向程序中读取)输出流(程序往外写)
public class Streamdemo2 {
//带缓冲区的字节输入输出流
public static void main(String[] args) throws IOException {
//创建一个输入流对象
FileInputStream in=new FileInputStream("C:/yqr.png");//普通流,节点流直接包含文件(数据)
BufferedInputStream bin =new BufferedInputStream(in);//处理流-->带缓冲功能的流
FileOutputStream out=new FileOutputStream("C:/yqr1.png");
BufferedOutputStream bout=new BufferedOutputStream(out);
byte [] b=new byte[1024];
int size;
while((size=bin.read(b))!=-1){
bout.write(b,0,size);
}
bout.close();
bin.close();
bout.flush();
}
}
import java.io.FileReader;
import java.io.FileWriter;
import java.io.IOException;
public class chardemo {
public static void main(String[] args) throws IOException {
FileReader reader=new FileReader("D:/jj.txt");
FileWriter writer=new FileWriter("D:/jj1.txt");
char [] ch=new char[100];
int size=0;
while((size= reader.read(ch))!=-1){
writer.write(ch,0,size);
}
reader.close();
writer.close();
}
}
注意