java中使用File类来作为文件和目录路径名的抽象表示,是对于文件或者目录本身的属性来说的,而不是针对于文件的内容。

一些关于File类基本操作的代码如下:

public class FileTest {/*** 可用于操作文件或者目录* @author chaizepeng** @param args*/public static void main(String[] args) {//构造方法,获取一个File的实例,就相当于在指定路径下获取一个文件或文件夹(不管其是否存在)File file = new File("E://test/a/b/c.txt");//1、listRoots()  用于查看当前操作系统的文件系统的所有根目录File[] listRoots = File.listRoots();for (int i = 0; i < listRoots.length; i++) {System.out.println(listRoots[i].getPath());;}//2、createTempFile(String prefix, String suffix, File directory)//在指定的目录中创建一个新的空文件,使用给定的前缀(czp)和后缀(test.txt)字符串生成其名称try {File.createTempFile("czp", "test.txt",new File("E:"));} catch (IOException e) {e.printStackTrace();}//3、判断文件或文件夹是否存在boolean exists = file.exists();if (exists) {System.out.println("文件夹存在");}//4、创建一个文件try {file.createNewFile();} catch (IOException e) {e.printStackTrace();}//5、创建一个一层目录的文件夹(除根目录外)file.mkdir();//6、创建一个多层目录的文件夹file.mkdirs();//7、获取文件名String fileName = file.getName();//8、获取文件的全路径名String allFileName = file.getPath();//9、获取文件所在的父级目录名String parentFileName = file.getParent();}
}

接下来通过完成一个需求来演示一下关于File类的一些其他的功能,代码如下:

public class FileListTest {public static void main(String[] args) {FileListTest fileListTest = new FileListTest();//需求1:获取当前系统文件系统中所有的.xml文件fileListTest.getFileEndWithXml();//需求2:获取指定目录下所有的.xml文件,这个功能常用于文件上传选择指定类型文件时fileListTest.getThisPathFile("指定目录");}public void getThisPathFile(String path) {File file = new File(path);File[] listFiles = file.listFiles(new FileFilter() {//文件过滤器@Overridepublic boolean accept(File pathname) {return pathname.getName().endsWith(".routes");}});for (File file2 : listFiles) {System.out.println("名字都是以.routes结尾:"+file2.getName());}}/*** 需求1:获取当前系统文件系统中所有的.xml文件* @author chaizepeng** @param file*/public void getFileEndWithXml() {//1、先获取文件系统中所有的根目录File[] listRoots = File.listRoots();for (File file : listRoots) {getFileEndWithXml(file);}}/*** 递归获取每一个文件* @author chaizepeng** @param file*/private void getFileEndWithXml(File file) {File[] listFiles = file.listFiles();if (listFiles != null) {for (File childFile : listFiles) {if (childFile.isDirectory()) {//判断file是否是一个目录getFileEndWithXml(childFile);//是目录的话,递归遍历}if (childFile.isFile() && childFile.getName().endsWith(".xml")) {//判断file是否是文件,并且以.xml结尾System.out.println(childFile.getPath());}}}}
}

以上只是对File类的用法做了简单的介绍。

10、java中文件的抽象表示相关推荐

  1. java中文件处理之图片_在Java 7中处理文件

    java中文件处理之图片 以下是The Well-Grounded Java Developer的草稿的修改后的片段. 它使您快速了解与以前版本相比,在Java 7中操作文件要容易得多. 通过使用新的 ...

  2. 为什么静态方法在Java中不能是抽象的

    本文翻译自:Why can't static methods be abstract in Java The question is in Java why can't I define an abs ...

  3. java直接调用复制文件,java中文件复制的4种方式,java文件的复制

    java中文件复制的4种方式,java文件的复制 今天一个同事问我文件复制的问题,他一个100M的文件复制的指定目录下竟然成了1G多,吓我一跳,后来看了他的代码发现是自己通过字节流复制的,定义的字节数 ...

  4. java中文件的操作讲解

    1.基本概念的理解 绝对路径:绝对路径就是你的主页上的文件或目录在硬盘上真正的路径,(URL和物理路径)例如: C:\xyz\test.txt 代表了test.txt文件的绝对路径.http://ww ...

  5. file相对路径java_浅谈java 中文件的读取File、以及相对路径的问题

    一.对于java项目中文件的读取 1.使用system 或是 系统的properties对象 ①直接是使用 string relativelypath=system.getproperty(" ...

  6. java中文件,java中文件操作大全

    java中文件操作大全 一.获得控制台用户输入的信息 view plaincopy to clipboardprint? / //获得控制台用户输入的信息 return throws ioexcept ...

  7. java中文件处理之图片_Java中的文件处理

    java中文件处理之图片 File Handing in java comes under IO operations. Java IO package java.io classes are spe ...

  8. java中文件的上传和下载:文件上传和下载原理

    在TCP/IP中,我们知道最早的上传机制为FTP,它是指将文件由客户端发送到服务器的标准机制.然而我们在jsp编程中不能使用FTP来上传文件,这是由于jsp运行机制决定的.               ...

  9. Java中文件的相对路径与绝对路径

    一.Linux和Windows路径分隔符 Linux下:"/" Window下:"\\" Java中通用:System.getProperty("fi ...

最新文章

  1. 字典写入excel_使用Python扫描邮件/填写Excel表格实现办公自动化
  2. 脚本其实很简单-windows配置核查程序(1)
  3. MapReduce基础开发之十三FileSystem实现本地文件上传
  4. 编码练习——Java-1-基础
  5. 安裝TA-Lib到想要罵髒話
  6. python脚本创建拓扑_实验 1:Mininet --拓扑的命令脚本生成
  7. wd2003计算机考试,2015计算机一级MsOffice练习:Word2003
  8. Angular property binding重复触发的问题讨论
  9. 禁用UpdateOrchestrator重新启动任务
  10. HDU 1800(字典树)
  11. 删除用户账号的命令 mysql_【Mysql】常用指令之——用户操作(创建,授权,修改,删除)...
  12. 用python海龟制图画花瓣_Python竟能画这么漂亮的花,帅呆了(代码分享)
  13. Python_base_正则表达式
  14. 蓝桥杯2016年第七届C/C++省赛B组第二题-生日蜡烛
  15. 【原创】CSS3动画总结对比 / 带思维导图 / 启发小案例
  16. MBlock开发环境搭建
  17. 网络邻居没有查看工作组计算机,为什么网上邻居内看不到计算机工作组
  18. python爬取链家_Python爬取链家北京二手房数据
  19. 微信小程序实现图片下载功能
  20. 每日新闻丨软件业务收入64616亿元;工信部发话广电5G正式启动

热门文章

  1. 10-3 5-3 查询生产最高速度的计算机(PC或便携式电脑)厂商 (20 分)
  2. 7-11 租用游艇问题 (15 分)(思路+详解+一步步分析+网格解决动态规划问题)Come boy!!!!
  3. Leetcode 数据结构与算法题解大全——目录(推荐收藏,持续更新)
  4. java打印设备集中管理_Kafka+Log4j实现日志集中管理
  5. C++实现双栈结构(一个顺序表中使用两个栈)
  6. [召集令]-Dijkstra的单源最短路径算法
  7. Go中new和make的区别
  8. gitlab 删除分支_初识gitlab工作流
  9. Ubuntu 16.04 安装 cuda 7.5.run BEGIN failed--compilation aborted at ./cuda-installer.pl line 5
  10. E:Sleeping Schedule(DP)