当前位置: 首页 > news >正文

淮安网站建设价位跟犀牛云一样做网站的

淮安网站建设价位,跟犀牛云一样做网站的,怎样查询网站的点击量,丰顺最新新闻今天一.java.io.File类 作用:它的作用是用来表示某个文件或文件夹(文件夹又称为目录) 如何用File类的对象表示一个文件或目录的呢? API文档中描述:文件和目录路径名的抽象表示形式 解释:如果要表示一个文件…

一.java.io.File类

作用:它的作用是用来表示某个文件或文件夹(文件夹又称为目录)

如何用File类的对象表示一个文件或目录的呢?

API文档中描述:文件和目录路径名的抽象表示形式

解释:如果要表示一个文件或目录,需要指定它的“路径名”

例如:要表示Windows操作系统下的D盘Download文件夹下的大学资料.zip

那么可以这样表示 File file = new File("d:\\Download\\大学资料.zip");

要表示Windows操作系统下的D盘Download文件夹

那么可以这样表示 File file = new File("d:\\Download");

路径分隔符:

        早期Windows只支持  \

        现在所有平台都支持  /

二.File类的常用方法系列1

public String getName():返回由此File表示的文件或目录的名称

public long length():返回由此File表示的文件的长度。

        返回由此抽象路径名表示的文件的长度。如果此路径名表示一个目录,则返回值是不确定的。

public String getPath():将此File转换为路径名字符串。

public long lastModified():返回File对象对应的文件或目录的最后修改时间(毫秒值)

三.各种路径问题

路径名词

(1)绝对路径和相对路径

绝对路径:在描述文件或文件夹时,从根目录开始导航的路径

        对于windows操作系统来说,盘符就是根

                如:d:/Download

                d:/Download/大学资料.zip

        对于linux操作系统来说,/ 就是根

                /Download

相对路径:在描述文件或文件夹下,不是从根目录开始导航的路径

        例如:download/1.txt

相当于谁呢?

        对于IDEA中,JUnit的test方法,相对路径是相当于当前的模块

        对于IDEA中,main方法,相对路径是相当于当前的project

(2)构造路径

在new File()对象时,在()中填写的路径。

构造路径可以是相对路径,也可以是绝对路径。

(3)规范路径

如果路径名中出现了".."等情况,会进行解析

String getPath():获取的是构造路径的值

String getAbsolutePath():获取绝对路径的值

String getCanonicalPath():获取规范路径的值

(4)File类的常用方法系列3

创建文件和文件夹的方法

public boolean createNewFile() throws IOException:创建一个新文件

public boolean mkdir():创建文件夹,这个是文件夹只能一个一个创建

public boolean mkdirs():创建文件夹,这个是文件夹的多个目录可以一起创建

public Boolean delete():删除文件或文件夹

        如果文件夹是非空目录,那么是无法删除的。即只能删除空文件夹。

(5)判断某个File对象代表的文件或文件夹的情况:

public boolean exists():此File表示的文件或目录是否实际存在

public boolean isDirectory():此File表示的是否为目录

public boolean isFile():此File表示的是否为文件

如果指定的某个文件或文件夹的路径名后,这个文件或文件夹在实际的路径下不存在,不影响创建File类的对象。

如果File类对象的代表的文件或文件夹不存在,那么它既不是文件夹也不是文件。

(6)对于文件夹的File对象来说,可以进行如下操作:

public String[] list():返回一个String数组,表示该File目录中的所有的子文件或目录。

public File[] listFiles():返回一个File数组,表示该File目录中的所有的子文件或目录

public File[] listFiles(FileFilter filter):返回所有满足指定过滤器的文件和目录。如果给定 filter 为 null,则接受所有路径名。否则,当且仅当在路径名上调用过滤器的 FileFilter.accept(File pathname)方法返回 true 时,该路径名才满足过滤器。如果当前File对象不表示一个目录,或者发生 I/O 错误,则返回 null。

public String[] list(FilenameFilter filter):返回返回所有满足指定过滤器的文件和目录。如果给定 filter 为 null,则接受所有路径名。否则,当且仅当在路径名上调用过滤器的 FilenameFilter .accept(File dir, String name)方法返回 true 时,该路径名才满足过滤器。如果当前File对象不表示一个目录,或者发生 I/O 错误,则返回 null。

public File[] listFiles(FilenameFilter filter):返回返回所有满足指定过滤器的文件和目录。如果给定 filter 为 null,则接受所有路径名。否则,当且仅当在路径名上调用过滤器的 FilenameFilter .accept(File dir, String name)方法返回 true 时,该路径名才满足过滤器。如果当前File对象不表示一个目录,或者发生 I/O 错误,则返回 null。

java.io.FileFilter:文件过滤接口

        抽象方法:boolean accept(File pathname)

        pathname是某个文件夹在列出下一级时的每一个下一级

        如果pathname根据某个条件返回true,就表示要留下这个文件或文件夹。

代码整合:

public class TestFile {@Testpublic void test17(){//获取download下面的所有图片 以.jpg为例File dir = new File("d:\\download");listAllJpgImageSubs(dir);}public void listAllJpgImageSubs(File dir){if(dir.isDirectory()){//条件成立的话,说明是一个存在的文件夹File[] files = dir.listFiles(new FileFilter() {@Overridepublic boolean accept(File pathname) {return pathname.getName().endsWith(".jpg") || pathname.isDirectory();}});for (File sub : files) {if(sub.isDirectory()){listAllJpgImageSubs(sub);}else{System.out.println(sub);}}}}@Testpublic void test16() {File dir = new File("d:\\download");listAllSubs(dir);}public void listAllSubs(File dir){if(dir.isDirectory()){//条件成立的话,说明是一个存在的文件夹System.out.println(dir);File[] files = dir.listFiles();for (File sub : files) {if(sub.isDirectory()){listAllSubs(sub);}else{System.out.println(sub);}}}}/*public void listAllSubs(File dir){System.out.println(dir);if(dir.isDirectory()){//条件成立的话,说明是一个存在的文件夹File[] files = dir.listFiles();for (File sub : files) {listAllSubs(sub);}}}*/@Testpublic void test15(){File dir = new File("d:\\download");String[] allSubs = dir.list();for (String sub : allSubs) {System.out.println(sub);}}@Testpublic void test14() throws IOException {File file = new File("d:/Download/北华大学实训归档材料-王海龙.zip");System.out.println(file.exists());//trueSystem.out.println(file.isDirectory());//falseSystem.out.println(file.isFile());//true}@Testpublic void test13(){File file = new File("d:\\1.txt");//new File对象只是在JVM的堆内存中创建一个对象,不会真的在硬盘中创建一个文件或文件夹。//只有调用createNewFile或mkdir/mkdirs才会创建文件或文件夹System.out.println(file.exists());//falseSystem.out.println(file.isDirectory());//falseSystem.out.println(file.isFile());//falseSystem.out.println(file.length());//0System.out.println(file.lastModified());//0}@Testpublic void test12(){File file = new File("download\\1.txt");file.delete();File dir = new File("download");dir.delete();}@Testpublic void test11() throws IOException {File dir = new File("d:\\io\\java\\test\\aa");//dir是代表aa文件夹//dir.mkdir();//如果d:\io\java\test文件夹不存在,aa文件夹创建失败,但是不会报异常dir.mkdirs();//如果d:\io\java\test文件夹不存在,连同它们和aa一起创建}@Testpublic void test10() throws IOException {File file = new File("d:/Download/北华大学实训归档材料-王海龙.zip");System.out.println(file.getPath());//d:\Download\北华大学实训归档材料-王海龙.zipSystem.out.println(file.getAbsolutePath());//d:\Download\北华大学实训归档材料-王海龙.zipSystem.out.println(file.getCanonicalPath());//D:\Download\北华大学实训归档材料-王海龙.zip}@Testpublic void test09() throws IOException {File file = new File("../../../download/1.txt");System.out.println(file.getPath());//..\..\..\download\1.txtSystem.out.println(file.getAbsolutePath());//D:\atguigu\javaee\JavaSE20220106\JavaSECode\day0218_22teacher_code\..\..\..\download\1.txtSystem.out.println(file.getCanonicalPath());//D:\atguigu\javaee\download\1.txt}@Testpublic void test08() throws IOException {File file = new File("d:/Download/北华大学实训归档材料-王海龙.zip");System.out.println(file.getPath());//d:\Download\北华大学实训归档材料-王海龙.zipSystem.out.println(file.getAbsolutePath());//d:\Download\北华大学实训归档材料-王海龙.zip}@Testpublic void test07() throws IOException {File file = new File("download/1.txt");System.out.println(file.getPath());//download\1.txtSystem.out.println(file.getAbsolutePath());//D:\atguigu\javaee\JavaSE20220106\JavaSECode\day0218_22teacher_code\download\1.txt}public static void main(String[] args) throws IOException{File dir = new File("download");dir.mkdir();//make directoryFile file = new File("download/1.txt");file.createNewFile();}@Testpublic void test06() throws IOException {File dir = new File("download");dir.mkdir();//make directoryFile file = new File("download/1.txt");file.createNewFile();}@Testpublic void test05() {File file = new File("d:/Download");System.out.println(file);System.out.println("文件夹名字:" + file.getName());System.out.println("文件夹路径名:" + file.getPath());System.out.println("文件夹大小:" + file.length());//错误的System.out.println("最后修改时间:" +file.lastModified());long time = file.lastModified();Date date = new Date(time);System.out.println("最后修改时间:" + date);}@Testpublic void test04() {File file = new File("d:/Download/北华大学实训归档材料-王海龙.zip");System.out.println(file);System.out.println("文件名字:" + file.getName());System.out.println("文件路径名:" + file.getPath());System.out.println("文件大小:" + file.length());System.out.println("最后修改时间:" +file.lastModified());long time = file.lastModified();Date date = new Date(time);System.out.println("最后修改时间:" + date);}@Testpublic void test03() {File file = new File("d:/Download/北华大学实训归档材料-王海龙.zip");System.out.println(file);}@Testpublic void test02() {File file = new File("d:\\Download","北华大学实训归档材料-王海龙.zip");System.out.println(file);}@Testpublic void test01(){File file = new File("d:\\Download\\北华大学实训归档材料-王海龙.zip");File dir = new File("d:\\Download");System.out.println(file);System.out.println(dir);}
}

练习题(1):求某个目录(某个文件夹)总大小

public class Exercise1 {public static void main(String[] args) {File dir = new File("d:\\学习资料");
//        System.out.println(dir.length());//无法直接通过length方法获取文件夹的总大小System.out.println(getDirectoryLength(dir));}public static long getDirectoryLength(File dir){/*用一个变量,累加这个文件夹里面(包含下一级的下一级)的文件的大小。*/long sum = 0;if(dir.isFile()){//如果dir是文件,那么直接用length方法表示大小sum = dir.length();}else if(dir.isDirectory()){//列出文件夹的下一级File[] files = dir.listFiles();for (File sub : files) {//sub是dir的下一级,它可能是一个文件,也可能是一个文件夹
//                sum += sub的大小;sum += getDirectoryLength(sub);}}return sum;}}

练习题(2):递归删除非空目录

public class Exercise2 {public static void main(String[] args) {//友情提示:找一个没有用的文件夹测试,不然删除后,不在回收站File dir = new File("d:\\学习资料");
//        dir.delete();forceDeleteDirectory(dir);}public static void forceDeleteDirectory(File dir){/*思路:先把dir的下一级干掉,再删除dir自己*///先把dir的下一级干掉if(dir.isDirectory()){File[] files = dir.listFiles();for (File sub : files) {//sub是dir的下一级,可能是文件,可能是文件夹,而且文件夹可能是非空的forceDeleteDirectory(sub);}}//删除dir自己dir.delete();}
}
http://www.bjxfkj.com.cn/article/109377.html

相关文章:

  • 深圳电商网站建设烟台电子商务产业园网站建设
  • 深圳做企业网站的公司做深度的互联网站
  • 学校网站模板 中文版管理咨询的定义
  • 免费建立个人网站官网影响网站速度吗
  • 怎样免费给自己的公司做网站做外贸的网站开店流程
  • 用易语言做刷网站注册软件无法解析您网站的域名
  • 互联网有哪些行业邢台做网站优化哪儿好
  • 上弘科技网站建设郴州建设网站制作
  • flash工作室网站模板企点
  • 沅江网站设计网站 如何做 中英文切换
  • 电子商务网站建设服务外包网站页面设计工作流程
  • 深圳网站建设空间上海上网app
  • 免费学习资源网站12306网站建设花了多少钱
  • 可信赖的广州做网站一个网站 多个域名
  • 网站建设 洪塔百度一下你就知道原版
  • 在线网站建设费用是多少太平洋手机网官网
  • 信用惠州网站建设网站开发设计手册
  • 做项目搭建网站 构建数据库网站最新域名ip查询接口
  • 建网站自学佛山关键词搜索排名
  • 餐饮业网站源码 织梦济南建设集团招聘信息网站
  • 阅读网站源码公司网站建设佛山哪家
  • 北海网站制作个人备案网站可以做淘宝客吗
  • 用自己的手机做网站ps在线网页版
  • 自己做导航网站wordpress获得所有分类
  • 网站建设推广语言免费字体设计软件
  • 音乐网站开发思路页面模板下载
  • 苏州微信网站建设如何做好一个企业网站
  • 网站建设性价比高如何建立网站会员系统
  • 电子商务网站建设读书报告宿迁网站建设公司排名
  • 深圳建科院公司网站dw网页制作表单