File类操作文件
public static void main(string[] args){try {//创建File对象// 绝对路径相对路径string path ="D:/4072/1/":String fileName ="1.txt";File file = new File(path);if(!file.exists()&&!file.isDirectory()){ file.mkdirs();//创建多级system.out.printin("进来创建文件夹”);}File filel = new File(path,fileName);if(!file1.exists()&&!file1.isFile()){System.out.printin("进来创建文件....");file1.createNewFile();}System.out.println("判断文件或目录是否存在:"+file.exists());System.out.println("判断是否是文件:"+file.isFile());System.out.println("判断是否是文件夹:"+file.isDirectory());System.out.println("相对路径:"+file.getPath());System.out.println("绝对路径:"+file.getAbsolutePath());System.out.println("获得文件或目录名称:"+file.getName());System.out.println("获得文件字节数:"+file.length());System.out.println("删除文件或目录:"+file.delete());catch(Exceptione){e.printstackTrace();}
}
流的使用和分类
字节流:byte
输入流:input(读取)
inputStream->FileinputStream(路径|对象)
.available()获得文件字节数
.read() || .read(字节数组)
.close(); //关闭流 释放资源
public static void main(string[] args){Inputstream is = null;try {is = new FileInputstream("D:\\4072\\1/1.txt");//定义字节数组 用于接收数据byte b[]= new byte[is.available()];is.read(b);//读取内容方入数组//将字节数组转换为字符串String str = new string(b,"GBK");system.out.printin(str);}catch(Exceptione){e.printstackTrace();}finally {try {is.close();//释放资源}catch(IoException e){e.printstackTrace;}}
}
输出流:output(写入)
OutputStream->FileOutputStream("路径 || File对象,"boolean 是否追加内容)
os.write(字节数组) 写入内容 字符串通过getBytes()转为字节数组
os.close(); //释放资源
os.flush(); //强制把缓冲区的数据写到输出流中
public static void main(string[] args){Outputstream os =null;try{os = new Fileoutputstream("D:\\4072\\1/1.txt",true);String msg ="张三";//将字符串转换为字节数组 并调用write方法进行写入os.write(msg.getBytes);System.out.print]n("写入成功。。。。");catch(Exceptione){e.printstackTrace;} finally {try {os.close();} catch(IoException e){e.printstackTrace;}}
}
复制文件内容代码如下:
public static void main(string[] args){Inputstream is = null;//读Outputstream os =null;//写try {is = new FileInputstream("D:\\4072\\1/1.txt");os = new Fileoutputstream("D:\\4072\\1/2.txt");int b = -1;while((b =is.read()!=-1){os.write(b);}System.out.printin("复制成功!!!!");}catch(Exception e){e.printstackTrace();}finally {try {//释放资源if(is!=null) is.close();if(os!=nu1l) os.close();}catch(IoException e){throw new RuntimeException(e);}}
}