1.包名:java.io.File
2.File对象即可表示文件,又可表示目录
3.创建一个File对象的语法格式:File file=new File("文件路径");
如:File file=new File("C:\test.txt");
4.注意:相对路径:非web项目的相对都是以项目为起点。(src/a/txt(建议)
绝对路径:f:/bin/a.txt(以盘符开头)
5.文件常见方法
boolean flag = f.exists(); //文件是否存在
flag = f.isFile(); //是否是文件
flag = f.isDirextory(); //是否是目录
str = f.getPath(); //获得文件的相对路径
str = f.getAbsolutePath(); //获取文件的绝对路径
str = f.getName(); //获取文件的目录或名称
flag = f.delete(); //删除文件或目录
flag = f.createNewFile(); //创建文件
long = f.length(); // 返回文件长度
注意flag不能操作文件内容
示例代码:
//创建文件的方法
public void create(File file){
if(!file.exists()){
try{
file.createNewFile();
System.out.println("文件已创建!");
}catch(IOException e){
e.printStackTrace();
}
}
}
//删除文件的方法
public void delete(File file){
if(file.exists()){
file.delete();
System.out.println("文件已删除!");
}
}
//显示文件信息的方法
public void delete(File file){
if(file.isFile()){
System.out.println("名称"+file.getName());
System.out.println("相对路径"+file.getPath());
System.out.println("绝对路径"+file.getAbsolutePath());
System.out.println("文件大小"+file.length()+"字节");
}
if(file.isFile()){
System.out.println("此文文件是目录");
}else{
System.out.println("文件不存在");
}
}
6.Inptstream/OutputStream
文件:FileInptstream/FileOutputStream
3.1 Inptstream(输入流)
数据从文件到java代码中,
int read(); //读取一个字节
int read(byte[]); //读取一串字节
long avaliable; //文件长度
示例代码:
public class a {
public static void main(String[] args) throws Exception {
File f=new File("src/a.txt"); //相对路径
InputStream is=new FileInputStream(f);
int b=is.read(); //读取一个字节
System.out.println((char)b);
is.close(); //关闭流
}
}
public class b {
public static void main(String[] args) throws Exception {
File f=new File("src/b.txt"); //相对路径
InputStream is=new FileInputStream(f);
byte[]bs=new byte[10];
int b;
b=is.read(bs); //读取一串字节
System.out.println(Arrays.toString(bs));
is.close();
}
}
3.2 FileInptstream(字节文件输入流)
new FileInptstream(File)
new FileInptstream("文件路径+文件名")
例:InputStream is=new FileInputStream("src/a.txt");
3.3 OutputStream(输出流)
数据从java代码中,写到文件或其他介质中。
void write (字节);//写入一个字节
void write(byte[]); //写入字节数组
示例代码:
public class a {
public static void main(String[] args) throws Exception {
File f=new File("src/a.txt");
OutputStream os=new FileOutputStream(f);
os.write(97); //写入一个字节
os.close();
}
}
public class b {
public static void main(String[] args) throws Exception {
File f=new File("src/b.txt");
OutputStream os=new FileOutputStream(f);
byte[] bs={97,98,99,100,101};
os.write(bs); //写入字节数组
os.close();
}
}
3.4 FileOutputStream
new FileOutputStream(file)
new FileOutputStream("文件路径+文件名")
new FileOutputStream("文件路径+文件名",boolean)
注意:a.boolean:表示是否向文件末尾追加,如果是true,表示
追加,false表示不追加(也就是覆盖),默认值为false
b.创建FileOutputStream实咧时,
如果相应的文件并不存在,则会自动创建一个空的文件。