File文件的一些基本方法和操作
来源:互联网 发布:淘宝广东二手复印机 编辑:程序博客网 时间:2024/06/07 20:37
1.File对象对应你磁盘上的一个文件或者文件夹(路径),一个file对象代表了一个文件或者文件夹的引用,并不是直接物理上的。
2.File.separator: 连接符
public static final String separator与系统相关的默认名称 - 分隔符字符,以方便的方式表示为字符串。 该字符串包含一个字符,即separatorChar 。 (public static final char separatorChar与系统相关的默认名称分隔符。 该字段被初始化为包含系统属性值file.separator的第一个file.separator 。 在UNIX系统上,该字段的值为’/’ ; 在Microsoft Windows系统上是’\’ 。 )
3.创建File实例对象的几种方式
第一种:
File file = new File("D:\\abc.txt"); System.out.println(file);
第二种:
// parent 前面的路径 chid 在parent 后面追加的目录 File file2 = new File("D:\\c", "abc.txt"); System.out.println(file2);
第三种:
File parent = new File("D:\\d"); File file3 = new File(parent, "qwe.doc"); System.out.println(file3);
4.创建文件
//返回的是否创建成功 try { boolean flag = file.createNewFile(); System.out.println(flag); } catch (IOException e) { e.printStackTrace(); }
5.判断文件是否可读写canRead() canWrite()
System.out.println(file.canRead()); // 判断文件是否可写 System.out.println(file.canWrite());
6 . 判断文件是否存在exists(), 如果不存在则 创建, 存在则不创建了
if(!file2.exists()){// 判断文件是否存在 try { file2.createNewFile(); } catch (IOException e) { // TODO Auto-generated catch block e.printStackTrace(); } }else{ System.out.println("已经存在了 "); }
7 .创建文件夹 单层mkdir()
String string = "D:\\d"; File file = new File(string); boolean flag = file.mkdir();// 创建文件夹 单层 System.out.println(flag);
8 .利用mkdirs 可以同时创建多层目录
File file2 = new File("D:\\d\\a\\c\\w"); file2.mkdirs();// 利用mkdirs 可以同时创建多层目录
9 . 如何区分 文件或者是 文件夹
if(file2.isDirectory()){// 判断是否是文件夹 System.out.println("是文件夹"); } if(file3.isFile()){ System.out.println("是文件"); }
10 . 删除指定文件
File file2 = new File("D:\\d\\a\\c\\w"); File file3 = new File(file2, "abc.txt"); boolean flag2 = file3.delete(); System.out.println(flag2);
11 .length()判断文件的长度 而非文件夹的长度 ,返回long类型的
long l = file3.length(); System.out.println(l);
12 .得到路径
File file = new File("D:\\d\\a\\c\\w\\abc.txt"); System.out.println(file.getPath());// 得到路径
13 .System.out.println(file.getParent());// 得到 文件的父目录
14 . System.out.println(file.getParentFile());// 得到 文件的父目录 返回的是File对象
15 .// 重命名 被其他 占用的时候 就不能重命名成功
File file3 = new File("D:\\d\\a\\c\\w\\hehe.txt"); boolean flag = file.renameTo(file3); System.out.println(flag);
16.将文件过滤掉,文件夹保留
package com.qf.demo2;import java.io.File;import java.io.FilenameFilter;/** * list() 返回 指定目录 下的 所有 的 目录和文件的名字 String[] * list(FilenameFilter filter) 得到的所有的名字 进行对应的过滤 * * * * listFiles() 返回 指定目录 下的 所有 的 目录和文件的 file 对象表现形式 File[] * listFiles(FilenameFilter filter) 得到的所有的名字 进行对应的过滤 * */public class Test4 { public static void main(String[] args) { //File file = new File("D\\java上课内容\\2015新版PPT":); File file = new File("D:\\java上课内容"); String[] strings = file.list(); /*for (String string : strings) { System.out.println(string); } File[] files = file.listFiles(); for (File file2 : files) { System.out.println(file2); }*/ String[] strings2 = file.list(new MyFilter()); for (String string : strings2) { System.out.println(string); } File[] file2 = file.listFiles(new MyFilter()); for (File file3 : file2) { System.out.println(file3); } }}class MyFilter implements FilenameFilter{ // dir 指定的目录 name 是 dir 指定目录下的文件或者是文件夹的名字 public boolean accept(File dir, String name) { // if(name.endsWith(".txt")){// return false;// } // 假如是 文件 就 过滤掉, 如果是文件夹 , 就保留 // D:\\java上课内容 \\ java新版ppt File file = new File(dir,name); if(file.isFile()){ return false; } return true;// 返回ture 证明 保留下来的 // 返回 false 要被过滤掉的 }}
17 .得到指定文件夹下的所有的文件
package com.qf.demo2;import java.io.File;/** * 递归 * 自己调用自己 * 以此类推 * 同性质的问题 范围缩小, 直到 结果 可以直接的出来 需求: 得到指定文件夹下的所有的文件计算 指定文件夹 所有文件 和 文件夹的个数 */public class Test5 { public static void main(String[] args) { findFile(new File("D:\\java上课内容")); } // 得到 指定文件夹下一层的所有的文件和文件 // // 如果是文件 打印输出, 如果文件夹 public static void findFile(File file){// 既可以代表文件也可以代表文件夹 // 保证非空 if(file != null){ // 保证是文件夹 if(!file.isFile()){ // 得到文件夹下的文件或者是 文件夹了 File[] files = file.listFiles();// 新版ppt ppt .pptx for (File file2 : files) {// 把所有的文件和文件夹遍历一遍 findFile(file2);// 无论是文件还是文件夹 都可以调用 此方法 } }else{ System.out.println(file); } }else{ System.out.println("闹着玩呢??????"); } }}
- File文件的一些基本方法和操作
- 操作File文件的一些基本打包函数
- File对象的一些基本方法和一些练习
- 文件File的基本操作
- File文件的 基本操作
- java.io.File操作文件的一些常用方法
- 文件的一些基本操作
- 文件的一些基本操作
- 一些基本的文件操作
- 操作Json和Json数组的一些基本方法
- C#File类常用的文件操作方法(创建、移动、删除、复制等) File类,是一个静态类,主要是来提供一些函数库用的。静态实用类,提供了很多静态的方法,支持对文件的基本操作,包括创建,拷贝,移动,删除和
- File的基本操作
- PHP关于文件的一些基本操作
- linux下面文件的一些基本操作
- 【Ajax】的一些基本方法,Json操作
- Java对文件和文件夹操作的一些方法
- File的一些操作
- java中file的一些用法:文件复制,lis方法和listfiles方法等
- 关注民生民情——华北水利水电大学“情艺”国情社情调查
- Hdu-2087-剪花布条-【KMP】
- linux学习笔记(五)
- java反射机制详解 及 Method.invoke解释 getMethod
- SSM整合
- File文件的一些基本方法和操作
- 用使用友盟标准SDK而未集成任何广告服务
- Matisse Android 图片选择器
- 两个不同的文件相互引用全局变量
- Oracle的安装
- POJ 2253 Frogger
- RecyclerView的封装和使用(一)
- Setting up CocoaPods master repo等 速度慢、卡住终极解决方案
- (14)2017.8.15-I/O