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

手机网站 建设免费b站推广

手机网站 建设,免费b站推广,中国产品网网址,自助下单网站怎么做Java文件IO操作一、File类1.相对路径和绝对路径2.路径分隔符(同一路径下、多个路径下)3.实例化4.常见方法一、File类 File类继承自Object类,实现了Serializable接口和Comparable接口; File类属于java.io包; File类是文…

Java文件IO操作

  • 一、File类
    • 1.相对路径和绝对路径
    • 2.路径分隔符(同一路径下、多个路径下)
    • 3.实例化
    • 4.常见方法

一、File类

File类继承自Object类,实现了Serializable接口和Comparable接口;
File类属于java.io包;
File类是文件或者文件目录的一种抽象表示,即可使用File类的具体实例化对象表示文件或者文件目录;
File类只能对文件或文件目录进行一个抽象表示,可对其属性特征进行一定的描述,而如果想要对文件内容进行读写则需要借助IO流(具体地,将File对象作为IO流构造器参数);

1.相对路径和绝对路径

基于参考系不同,文件路径描述可分为相对路径和绝对路径

相对路径:相对于该文件当前位置的路径,比如./hello.java表示当前目录下的hello.java文件;
绝对路径:该文件在文件系统中的详细存储位置,比如C:\javase\hello.java,即包括文件所在根目录的路径;

2.路径分隔符(同一路径下、多个路径下)

在这里插入图片描述
1)同一路径下
需要注意,不同操作系统中路径分隔符是不同的,比如Linux下路径分隔符为斜杠/,而Windows系统中为反斜杠\,但在java语言中反斜杠用于特殊字符转义,故在java中Windows系统的路径分隔符为\\。由于Java主打“一次编译,到处运行”,故代码编写时若不统一路径分隔符会导致在不同的操作系统上运行程序时会出现异常。Java官方为解决该问题,在File类中提供一静态属性separator,自动获取当前操作系统的路径分隔符。

使用方法如下:

File.separator

举例:

C:\\javase\\hello.java可在代码中表示为:C:+File.separator+javase+File.separator+hello.java

File.separator为字符串类型,故使用“+”进行字符串拼接操作,这种操作看起来比较繁琐,故我们可直接统一使用斜杠/作为路径分隔符即可

2)多个路径下
此外,为了方便分隔多个路径,如“./xxx/yyy/c.txt;./xxx/yyy/d.txt”表示两个路径,File类提供静态属性pathSeparator进行此操作;
3)输出Windows系统中这四个属性的值:

System.out.println(File.pathSeparator);
System.out.println(File.pathSeparatorChar);
System.out.println(File.separator);
System.out.println(File.separatorChar);

对应输出:

;
;
\
\

3.实例化

提供以下四种构造器,用于创建File类对象:
在这里插入图片描述
1)File(String pathname)
pathname可为:

  • 具体文件的相对路径或绝对路径;
  • 文件目录的相对路径或绝对路径;
    需要注意,此处的相对路径必须是相对于该项目根目录而言,及src目录的父目录;
 // 其实此时File对象是一个抽象的路径表示// 使用路径字符串表示文件路径或文件目录File f1 = new File("./hello.txt");System.out.println(f1);File f2 = new File("F:\\IDEA_WorkSpace\\JavaIO\\JavaIO\\src\\com\\northsmile\\javaio\\hello.txt");System.out.println(f2);File f3 = new File("../demo");System.out.println(f3);File f4 = new File("F:\\IDEA_WorkSpace\\JavaIO\\JavaIO\\src\\com\\northsmile\\demo");System.out.println(f4);

对应输出:

.\hello.txt
F:\IDEA_WorkSpace\JavaIO\JavaIO\src\com\northsmile\javaio\hello.txt
..\demo
F:\IDEA_WorkSpace\JavaIO\JavaIO\src\com\northsmile\demo

2)File(String parent,String child)

  • parent为父目录;
  • child为父目录下某子目录或文件所在子目录路径;
 // 使用父路径(父目录)及子路径(子目录/文件所在子目录路径)构建File f5 = new File("F:\\IDEA_WorkSpace\\JavaIO\\JavaIO\\src\\com", "northsmile");System.out.println(f5);File f6 = new File("F:\\IDEA_WorkSpace\\JavaIO\\JavaIO\\src\\com\\northsmile\\javaio", "hello.txt");System.out.println(f6);

对应输出:

F:\IDEA_WorkSpace\JavaIO\JavaIO\src\com\northsmile
F:\IDEA_WorkSpace\JavaIO\JavaIO\src\com\northsmile\javaio\hello.txt

3)File(File parent,String child)

  • parent为File类对象表示的父目录;
  • child为父目录下某子目录或文件所在子目录路径;
 // 使用File类对象表示父目录,以此结合子路径(子目录/文件所在子目录路径)构建File f7 = new File(f5, "javaio/hello.txt");System.out.println(f7);File f8 = new File(f5, "javaio");System.out.println(f8);

对应输出:

F:\IDEA_WorkSpace\JavaIO\JavaIO\src\com\northsmile\javaio\hello.txt
F:\IDEA_WorkSpace\JavaIO\JavaIO\src\com\northsmile\javaio

4.常见方法

方法签名含义
public String getAbsolutePath()获取绝对路径
public String getPath()获取路径,如创建File对象时填写的pathname
public String getName()获取文件名或文件目录名
public String getParent()获取当前文件或目录的上级目录
public long length()获取文件长度,单位为字节数;不能用于获取目录的长度
public long lastModified()获该文件或目录最近一次修改时间,单位为毫秒
public String[] list()获取指定目录下所有文件名或子目录的名称数组(只有文件名或子目录名)
public File[] listFiles()获取指定目录下所有文件名或子目录的File数组(路径名均表示为绝对路径形式)
public boolean renameTo(File dest)将File对象表示的路径重命名
public boolean isDirectory()是否为目录
public boolean isFile()是否为文件
public boolean exists()指定路径是否存在
public boolean canRead()指定路径是否可读
public boolean canWrite()指定路径是否可写
public boolean isHidden()是否为隐藏文件
public boolean createNewFile()如果指定文件不存在,则自动创建该文件
public boolean mkdir()如果指定目录不存在,则自动创建指定目录。前提是该目录的父目录存在。
public boolean mkdirs()如果指定目录不存在,则自动创建指定目录。如果其父目录不存在,会自动为其创建父目录
public boolean delete()删除指定文件或目录(只能删除空目录)

示例1:
如果指定路径在硬盘中真实存在,则在创建File对象时,则会对其属性进行具体赋值,比如文件长度等;反之如果不存在,则保持默认值。

// 针对文件
File file = new File("F:\\IDEA_WorkSpace\\JavaIO\\JavaIO\\src\\com\\northsmile\\javaio\\hello.txt");
System.out.println(file.getAbsolutePath());
System.out.println(file.getPath());
System.out.println(file.getName());
System.out.println(file.getParent());
System.out.println(file.length());
System.out.println(file.lastModified());System.out.println("---------------------------");
// 针对文件目录
File dir = new File("F:\\IDEA_WorkSpace\\JavaIO\\JavaIO\\src\\com\\northsmile");
System.out.println(dir.getAbsolutePath());
System.out.println(dir.getPath());
System.out.println(dir.getName());
System.out.println(dir.getParent());
System.out.println(dir.lastModified());
System.out.println("---------------------------");
String[] fileNames=dir.list();
for (String name:fileNames){System.out.println(name);
}
System.out.println("---------------------------");
File[] files=dir.listFiles();
for (File f:files){System.out.println(f);
}

输出结果:

F:\IDEA_WorkSpace\JavaIO\JavaIO\src\com\northsmile\javaio\hello.txt
F:\IDEA_WorkSpace\JavaIO\JavaIO\src\com\northsmile\javaio\hello.txt
hello.txt
F:\IDEA_WorkSpace\JavaIO\JavaIO\src\com\northsmile\javaio
26
1677138552240
---------------------------
F:\IDEA_WorkSpace\JavaIO\JavaIO\src\com\northsmile
F:\IDEA_WorkSpace\JavaIO\JavaIO\src\com\northsmile
northsmile
F:\IDEA_WorkSpace\JavaIO\JavaIO\src\com
1677138472477
---------------------------
demo
javaio
---------------------------
F:\IDEA_WorkSpace\JavaIO\JavaIO\src\com\northsmile\demo
F:\IDEA_WorkSpace\JavaIO\JavaIO\src\com\northsmile\javaioProcess finished with exit code 0

示例2:

// 重命名
File file1=new File("hello.txt");
File file2=new File("hi.txt");
System.out.println(file1.renameTo(file2));

renameTo表示将指定路径重命名为目标路径,重命名成功有两个前提:

  • 源路径存在,目标路径不存在;
  • 源路径-目标路径有两种对应形式:文件-文件或文件目录-文件目录,即可对文件或文件目录进行重命名;

示例3:

 File file=new File("hello.txt");System.out.println(file.isDirectory());System.out.println(file.isFile());System.out.println(file.exists());System.out.println(file.canRead());System.out.println(file.canWrite());System.out.println(file.isHidden());

输出结果:

false
true
true
true
true
false

示例4:

 File file=new File("hi.txt");if (!file.exists()){  // 如果该文件不存在System.out.println("文件创建成功:"+file.createNewFile());}else{System.out.println("文件已存在,即将删除该文件。");System.out.println("删除成功:"+file.delete());}
File dir = new File("./testMkdir/demo");
if (!dir.exists()){if (dir.mkdir()){System.out.println("目录创建成功");}else{System.out.println("目录创建失败");}}else{System.out.println("删除该空目录:"+dir.delete());
}
        File dir = new File("./testMkdir/demo");if (!dir.exists()){if (dir.mkdirs()){System.out.println("目录创建成功");}else{System.out.println("目录创建失败");}}else{System.out.println("删除该空目录:"+dir.delete());}
http://www.ritt.cn/news/21142.html

相关文章:

  • 广州冼村疫情杭州网站seo价格
  • 建站公司一般用什么框架中国互联网公司排名
  • 免费推广营销网站苏州首页关键词优化
  • 做外贸哪些国外网站可以推广历史权重查询
  • 网站首页排名seo搜索优化新闻 今天
  • 网站描述范例最近的国际新闻
  • 中国采购网官方网站百度企业号
  • 做私活一个网站大概多少钱北京百度总部电话
  • 免费企业网站网站seo站长工具
  • 免费广州网站开发维护秦皇岛seo优化
  • 网站制作 企业网站建设哪家好深圳百度seo哪家好
  • vs2017 做网站seo网络推广什么意思
  • 聊城做网站的公司渠道自媒体平台大全
  • 买了一台配置强悍的电脑怎么做网站服务器企业模板建站
  • 免费b站推广友情链接格式
  • 深圳自适应网站设计怎么把网站排名优化
  • 门户网站建设总结长沙seo代理商
  • 网站正能量晚上在线观看长沙网站制作策划
  • 网站建设的基础是什么意思2023国内外重大新闻事件10条
  • 南通网站设计佛山网站建设方案服务
  • wordpress仿站维护免费建站网站一级
  • 国内外免费开源cms赣州seo外包
  • 浙江网站建设dyfwzx优化大师怎么下载
  • 做网站是靠什么挣钱电商网络销售是做什么
  • t型网站域名和版面郑州客串seo
  • 自己网站怎么做优化网络营销怎么做?
  • 通州区网站制作常见的营销策略有哪些
  • 出名的网站建设软件百度知道登录入口
  • 传奇手游网站大全9377抖音seo搜索引擎优化
  • 西安学校网站建设哪家专业杭州专业seo公司