Java中关于File类的详解

news2024/9/17 7:51:02

File类

File类是文件和目录路径名称的抽象表示,主要用于文件和目录的创建、查找和删除等操作。在创建File对象的时候,需要传递一个路径,这个路径定位到哪个文件或者文件夹上,File就代表哪个对象。

File file = new File("D:\HelloWorld\Books\test.txt")

File的静态成员

static String pathSeparator:与系统有关的路径分隔符,为了方便,它被表示为一个字符串。

String pathSeparator = File.pathSeparator;
System.out.println("pathSeparator = " + pathSeparator);

在这里插入图片描述
static String separator:与系统有关的默认名称分隔符,为了方便,它被表示为一个字符串。

String separator = File.separator;
System.out.println("separator = " + separator);

在这里插入图片描述
因为Java中转义符的原因,下面来介绍一下如何用Java代码正确编写一个路径。

public class Test {
    public static void main(String[] args) {
        file();
    }
    private static void file() {
        String path1 = "D:\\HelloWorld\\Books";
        System.out.println(path1);
        String path2 = "D:"+ File.separator+"HelloWorld"+File.separator+"Books"; //要求代码写完,一次编写,到处运行
        System.out.println(path2);
    }
}

两者运行结果是一样的。
在这里插入图片描述

File的构造方法

  1. File(String parent, String child) parent:父路径,child:子路径
public class Test {
    public static void main(String[] args) {
        File file = new File("D:\\HelloWorld\\Books", "test.txt");
        System.out.println("file = " + file);
    }
}

在这里插入图片描述

  1. File(File parent, String child)parent:父路径,是一个File对象,child:子路径
public class Test {
    public static void main(String[] args) {
        File parent = new File("D:\\HelloWorld\\Books");
        File file = new File(parent, "test.txt");
        System.out.println("file = " + file);
    }
}

在这里插入图片描述

  1. File(String pathname)根据所填写的路径创建File对象,pathname直接指定路径
public class Test {
    public static void main(String[] args) {
        File file = new File("D:\\HelloWorld\\Books\\test.txt");
        System.out.println("file = " + file);
    }
}

File的获取方法

  1. String getAbsolutePath():获取File的绝对路径,带盘符的路径
  2. String getPath():获取的是封装路径,new File对象的时候写的啥路径,获取的就是啥路径
  3. String getName():获取的是文件或者文件夹名称
  4. long length():获取的是文件的长度,文件的字节数

File的创建方法

  1. boolean createNewFile():创建文件,如果要创建的文件之前有,则会创建失败返回false。
  2. boolean mkdirs():创建文件夹(目录)既可以创建多级文件夹,还可以创建单级文件夹。如果要创建的文件夹之前有,则会创建失败,返回false

File的删除方法

boolean delete():删除文件或者文件夹,删除文件、文件夹不走回收站!且文件夹必须是空文件夹

File的判断方法

  1. boolean isDirectory():判断是否为文件夹
  2. boolean isFile():判断是否为文件
  3. boolean exists():判断文件或者文件夹是否存在

File的遍历方法

  1. String[] list():遍历指定的文件夹,返回的是String数组
  2. File[] listFiles():遍历指定的文件夹,返回的是File数组
    注意:listFiles方法底层还是list方法,调用list方法,遍历文件夹,返回一个Stirng数组,遍历数组,将数组中的内容一个一个封装到File对象中,然后再将File对象放到File数组中。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1917235.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

记一次Ueditor上传Bypss

前言 前一段时间和小伙伴在某内网进行渗透测试,目标不给加白,只能进行硬刚了,队友fscan一把梭发现某资产疑似存在Ueditor组件,但初步测试是存在waf和杀软的,无法进行getshell,经过一番折腾最终getshell&am…

揭秘”大模型加速器”如何助力大模型应用

文章目录 一、大模型发展面临的问题二、“大模型加速器”助力突破困难2.1 现场效果展示2.1.1 大模型加速器——文档解析引擎2.2.2 图表数据提取 三、TextIn智能文档处理平台3.1 在线免费体验3.1.1 数学公式提取3.1.2 表格数据提取 四、acge文本向量化模型4.1 介绍4.2 技术创新4…

Python基础语法:运算符详解(算术运算符、比较运算符、逻辑运算符、赋值运算符)②

文章目录 Python中的运算符详解一、算术运算符二、比较运算符三、逻辑运算符四、赋值运算符五、综合示例结论 Python中的运算符详解 在Python编程中,运算符用于执行各种操作,例如算术计算、比较、逻辑判断和赋值。了解并掌握这些运算符的使用方法是编写…

CTF php RCE (四)

0x08 取反以及异或、或 这两个东西呢相当的好玩&#xff0c;也能够达到一下小极限的操作 <?php error_reporting(0); if(isset($_GET[code])){$code$_GET[code];if(strlen($code)>40){die("This is too Long.");}if(preg_match("/[A-Za-z0-9]/",$…

Firealpaca 解锁版下载及安装教程 (火焰羊驼绘画软件)

前言 FireAlpaca是一款简单易用的电脑绘画软件&#xff0c;采用了类似于Photoshop的图层绘画方式。对于喜欢手绘和创作漫画的朋友来说&#xff0c;FireAlpaca的多图层功能使得绘画过程更加便捷和简单。作为一个小型图像编辑软件&#xff0c;它能够轻松处理多个图层或手绘图&am…

拥抱UniHttp,规范Http接口对接之旅

前言 如果你项目里还在用传统的编程式Http客户端比如HttpClient、Okhttp去直接对接第三方Http接口&#xff0c; 那么你项目一定充斥着大量的对接逻辑和代码&#xff0c; 并且针对不同的对接渠道方需要每次封装一次调用的简化&#xff0c; 一旦封装不好系统将会变得难以维护&am…

策略模式(大话设计模式)C/C++版本

策略模式 商场收银软件 根据客户所购买商品的单价和数量来收费 需求分析&#xff1a; 1. 输入单价数量 > 界面逻辑 2. 计算&#xff08;可能打折或者促销&#xff09; > 业务逻辑 3. 输出结果 > 界面逻辑感觉和计算器的逻辑流程差不多&#xff0c;可以用简单工厂模式…

浪潮天启防火墙TQ2000远程配置方法SSL-xxx、L2xx 配置方法

前言 本次设置只针对配置VXX&#xff0c;其他防火墙配置不涉及。建议把防火墙内外网都调通后再进行Vxx配置。 其他配置可参考&#xff1a;浪潮天启防火墙配置手册 配置SSLVxx 在外网端口开启SSLVxx信息 开启SSLVxx功能 1、勾选 “启用SSL-Vxx” 2、设置登录端口号&#xff0…

Unity3D 太空大战射击游戏

一、前言 本案例是初级案例&#xff0c;意在帮助想使用unity的初级开发者能较快的入门&#xff0c;体验unity开发的方便性和简易性能。 本次我们将使用团结引擎进行开发&#xff0c;帮助想体验团结引擎的入门开发者进行较快的环境熟悉。 本游戏案例以太空作战为背景&#xff0c…

如何分析软件测试中发现的Bug!

假如你是一名软件测试工程师&#xff0c;每天面对的就是那些“刁钻”的Bug&#xff0c;它们像是隐藏在黑暗中的敌人&#xff0c;时不时跳出来给你一个“惊喜”。那么&#xff0c;如何才能有效地分析和处理这些Bug&#xff0c;让你的测试工作变得高效且有趣呢&#xff1f;今天我…

Threadlocal使用获取最后更新人信息

Threadlocal 的作用范围是一个线程&#xff0c;tomcat启动默认开启一个线程 首先点击登录&#xff0c;登录方法会返回token 拿到token后放在请求头中发送商品的插入请求&#xff0c;在插入是设置拿到token中的nickName&#xff08;花名&#xff09;放入&#xff08;lastUpdate…

C 语言中如何实现字符串的拼接?

&#x1f345;关注博主&#x1f397;️ 带你畅游技术世界&#xff0c;不错过每一次成长机会&#xff01; &#x1f4d9;C 语言百万年薪修炼课程 【https://dwz.mosong.cc/cyyjc】通俗易懂&#xff0c;深入浅出&#xff0c;匠心打磨&#xff0c;死磕细节&#xff0c;6年迭代&…

轻松搭建RAG:澳鹏RAG开发工具

我们很高兴地宣布推出RAG开发工具&#xff0c;这是澳鹏大模型智能开发平台的一项新功能。此功能可帮助团队轻松创建高质量的检索增强生成 (RAG) 模型。 什么是 RAG&#xff1f; 检索增强生成 (RAG) 通过利用大量外部数据源&#xff08;例如企业的知识库&#xff09;显著增强了…

git查看版本,查看安装路径、更新版本

git version 查看版本 git update-git-for-windows 更新版本 git version 查看版本

美客多卖家必备:自养号测评补单技术的实战策略

构建美客多&#xff08;MercadoLibre&#xff09;自养号测评体系的稳健策略 一、确立目标与前期筹备 深入理解平台规范&#xff1a;首要任务是深入研究美客多平台的规则与指导方针&#xff0c;确保所有行动均符合平台要求&#xff0c;避免任何违规行为导致账号受限。 明确测评…

光电门验证动量守恒实验

本实验所需器件与第二个实验相同。但是连线方式有所区别&#xff0c;先将Arduino的电源输出接到两个光电门&#xff0c;然后再将光电门1的信号输出线接到Arduino的第10个端口&#xff0c;光电门2的信号输出线接到Arduino的第11个端口。对Arduino写入下列程序&#xff08;只有主…

删除【此电脑】中设备和驱动器下的迅雷下载方法

删除【此电脑】中设备和驱动器下的迅雷下载方法 我们安装迅雷下载、百度网盘、WPS等软件后&#xff0c;在【此电脑】–> 【设备和驱动器】目录下会看到这些驱动器的快捷方式&#xff0c;可以使用删除注册表的方式删除这些东西 启动注册表管理器 首先使用键盘快捷键 Win …

新零售起盘案例「半藏酱酒」布局路径,半藏总院分院招商模式

在当前白酒市场中&#xff0c;一款名为半藏酒的酒品以其独特的新零售模式引起了广泛关注。这种模式不同于传统销售方式&#xff0c;通过多种创新玩法&#xff0c;实现了销售与品牌推广的双重目标&#xff0c;让我们一起来看看细节。 半藏酒的分级代理制度将代理商分为两个层级&…

“未来城市发展之窗”2024上海城博会

随着2024年上海城市博览会的临近&#xff0c;招商工作正火热进行中&#xff0c;且已逐渐接近尾声。这场被誉为“城市未来之窗”的盛会&#xff0c;汇聚了全球各地的城市管理者、建筑师、规划师、投资者以及科技创新者&#xff0c;共同探讨城市发展的未来趋势和解决方案。 一、城…

JavaWeb-js(4)

js事件 在前端页面中&#xff0c;js程序大多数是由事件来驱动的&#xff0c;当触发某些事件的时候&#xff0c;可以使用js负责响应。 js事件由三部分组成: 事件源——》指的是被触发的对象; 事件类型——》如何触发的事件&#xff0c;如:鼠标单击、双击、键盘操作等;…