第十三章:IO流

13.1:File类的使用

package com.jiayifeng.java;import org.junit.Test;import java.io.File;
import java.io.IOException;
import java.nio.file.Files;
import java.util.Date;/*** author 爱编程的小贾* create 2023-10-10 16:13** 一:File类的使用*      1.File类的一个对象,代表一个文件或一个文件目录(俗称:文件夹)*      2.File类声明在java.io包下*      3.File类中涉及到关于文件或文件目录的创建、删除、重命名、修改时间、文件大小等方法,*          并未涉及到写入或读取文件内容的操作。如果需要读取或写入文件内容,必须使用IO流来完成*      4.后续File类的对象常会作为参数传递到流的构造器中,指明读取或写入的“终点”*/
public class FileTest {/*1.如何创建File类的实例:File(String filePath)File(String parentPath,String childPath)File(String parentFile,String childPath)2.相对路径:相较于某个路径下,指明的路径绝对路径:包含盘符在内的文件或文件目录的路径3.路径分隔符Windows:\\Unix:/*/@Testpublic void test1(){
//        构造器一:File file1 = new File("hello.txt");//相当于当前moduleSystem.out.println(file1);//        构造器二:File file2 = new File("D:\\Java","Files");System.out.println(file2);//        构造器三:File file3 = new File(file2,"hi.txt");System.out.println(file3);}@Testpublic void test2(){File file1 = new File("hello.txt");File file2 = new File("D:\\Java\\Files\\file1");
//        获取绝对路径System.out.println(file1.getAbsoluteFile());
//        获取路径System.out.println(file1.getPath());
//        获取名称System.out.println(file1.getName());
//        获取上层文件目录路径。若无,返回nullSystem.out.println(file1.getParent());
//        获取文件长度(即:字节数)。不能获取目录的长度System.out.println(file1.length());
//        获取最后一次的修改时间,毫秒值System.out.println(new Date(file1.lastModified()));System.out.println("**************");System.out.println(file2.getAbsoluteFile());System.out.println(file2.getPath());System.out.println(file2.getName());System.out.println(file2.getParent());System.out.println(file2.length());System.out.println(file2.lastModified());}@Testpublic void test3(){//以下两种方法适用于文件目录File file = new File("D:\\Java\\Files\\file1");//        获取指定目录下的所有文件或者文件目录的名称数组String[] list = file.list();for(String s : list){System.out.println(s);}//        获取指定目录下的所有文件或者文件目录的File数组File[] files = file.listFiles();for(File f : files){System.out.println(f);}}@Testpublic void test4(){/*public boolean renameTo(File dest):把文件重命名为指定的文件路径比如:file1.renameTo(file2)为例:要想保证返回true,需要file1在硬盘中是真实存在的,且file2不能在硬盘中存在*/File file1 = new File("hello.txt");File file2 = new File("D:\\Java\\Files\\file3.txt");boolean renameTo = file1.renameTo(file2);System.out.println(renameTo);}@Testpublic void test5(){
//        针对文件File file1 = new File("hi.txt");System.out.println(file1.isDirectory());System.out.println(file1.isFile());System.out.println(file1.exists());System.out.println(file1.canRead());System.out.println(file1.canWrite());System.out.println(file1.isHidden());}@Testpublic void test6() throws IOException {
//        File类的创建功能:创建硬盘中对应的文件或文件目录
//        创建文件。若文件存在,则不创建,返回false
//        mkdir:创建文件目录。若此文件目录存在,则不创建;若此文件目录的上层目录不存在,也不创建
//        mkdirs:创建文件目录。如果上层文件目录不存在,一并创建
//        注意:如果你创建文件或者文件目录没有写盘符路径,那么,默认在项目路径下//        File类的删除功能:删除硬盘中对应的文件或文件目录
//        删除文件或文件夹
//        注意事项:Java中的删除不走回收站//        1.文件的创建File file = new File("hello.txt");if(!file.exists()){file.createNewFile();System.out.println("创建成功");}else {//文件存在file.delete();System.out.println("删除成功");}}@Testpublic void test7(){
//        2.文件目录的创建File file1 = new File("D:\\Java\\Files\\files\\file1");boolean mkdir = file1.mkdir();if(mkdir){System.out.println("创建成功1");}File file2 = new File("D:\\Java\\Files\\files\\file2");boolean mkdir1 = file2.mkdirs();if(mkdir1){System.out.println("创建成功2");}}
}

13.2:IO流原理及流的分类

13.3:节点流(或文件流)

13.4:缓冲流

13.5:转换流

13.6:标准输入输出流5

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

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

相关文章

通过后台系统添加一段div,在div中写一个<style></style>标签来修改div外面的元素的深层元素的样式

先看图 btn元素就是通过后台系统加上的元素,现在需要通过在btn里面写一个style标签来修改grid-nine里面的head元素的高度.开始想通过style来修改,但是不知道怎么去获取这个div外面的元素,想通过js方法去修改,写了script标签加了js代码,但不生效,后面问了才知道,这个项目是vue打…

MES系统安灯管理:实时可视化生产线状态

一、MES系统安灯管理的意义: 安灯管理是指通过使用不同颜色的灯光信号来表示生产线的状态,以便生产人员能够直观地了解生产线的运行情况。MES系统安灯管理的意义在于提供一个实时可视化的工具,使制造企业能够及时发现生产线异常和潜在问题&a…

light client轻节点简介

1. 引言 前序博客: Helios——a16z crypto构建的去中心化以太坊轻节点 去中心化和自我主权对于Web3的未来至关重要,但是这些理想并不总适用于每个项目或应用程序。在非托管钱包和bridges等工具中严格优先考虑安全性而不是便利性的用户,可选…

【安全】容器中二进制漏洞检测方案

1 背景 镜像或者容器中,如果用户是通过包管理软件安装的程序,可以通过包管理软件获取对应的软件信息和版本信息,但是,如果用户自己编译了一个二进制,然后打包到镜像或者通过拷贝命令放到容器中,该如何识别…

设计模式 - 结构型模式考点篇:适配器模式(类适配器、对象适配器、接口适配器)

目录 一、适配器模式 一句话概括结构式模式 1.1、适配器模式概述 1.2、案例 1.2.1、类适配器模式实现案例 1.2.2、对象适配器 1.2.3、接口适配器 1.3、优缺点(对象适配器模式) 1.4、应用场景 一、适配器模式 一句话概括结构式模式 教你将类和对…

阿里云上了新闻联播

我是卢松松,点点上面的头像,欢迎关注我哦! 阿里新任的CEO吴泳铭上央视新闻联播了! 在昨天的新闻联播里,出席科技座谈会,有一个特别镜头,出现了阿里新任CEO吴泳铭的镜头。 这个信号意义明显,我…

uniapp下拉刷新

为什么要使用uniapp的下拉刷新呢 跨平台兼容性: Uniapp 允许你一次编写代码,然后在多个平台(如微信小程序、H5、iOS 和 Android 等)上运行。使用 Uniapp 的下拉刷新功能,可以确保在不同平台上都能提供一致的用户体验&a…

程序员的注释:编程艺术与沟通工具

在软件开发的世界中,注释是一种常见的做法。然而,对于许多程序员来说,写注释可能会被视为一种不必要的繁琐工作,或者被认为是对代码的“耍流氓”。这种观点引发了一个有趣的问题:我们是否应该写注释?如果应…

kali linux安装redis

官网:Install Redis from Source | Redis wget https://download.redis.io/redis-stable.tar.gztar -xzvf redis-stable.tar.gz cd redis-stable make显示如下即可进入下一步 sudo make installredis-server 可以看到已经可以使用了。 但是由于第一次使用导致了re…

Rust专属开发工具——RustRover发布

JetBrains最近推出的Rust集成开发工具——RustRover已经发布,官方网站:RustRover: Rust IDE by JetBrains JetBrains出品过很受欢迎的开发工具IntelliJ IDEA、PyCharm等。 RustRover优势 Rust集成环境,根据向导可自动下载安装rust开发环境提…

Centos7中安装Jenkins教程

1.必须先配置jdk环境,安装jdk参考 Linux配置jdk 2.先卸载Jenkins # rpm卸载 rpm -e jenkins # 检查是否卸载成功 rpm -ql jenkins # 彻底删除残留文件 find / -iname jenkins | xargs -n 1000 rm -rf 3.安装Jenkins 在 /usr/ 目录下创建 jenkins文件夹 mkdir -p je…

Maven 构建Java项目

Maven 使用原型 archetype 插件创建项目。要创建一个简单的 Java 应用,我们将使用 maven-archetype-quickstart 插件。 在下面的例子中,我们将在 C:\MVN 文件夹下创建一个基于 maven 的 java 应用项目。 命令格式如下: mvn archetype:gene…

微信小程序--》从模块小程序项目案例23.10.09

配置导航栏 导航栏是小程序的门户,用户进来第一眼看到的便是导航栏,其起着对当前小程序主题的概括。而我们 新建的小程序 时,第一步变开始配置导航栏。如下: 配置tabBar 因为配置tabBar需要借助字体图标,我这里平常喜…

C++中的运算符重载

目录 1、运算符重载规则 2、运算符重载的两种形式 2.1、成员函数重载形式 2.2、普通的非成员函数重载形式 1、运算符重载规则 C中可以重定义或重载大部分 C 内置的运算符。这样,我们就能使用自定义类型的运算符。 重载的运算符是带有特殊名称的函数&#xff0c…

【数据库——MySQL】(16)游标和触发器习题及讲解

目录 1. 题目1.1 游标1.2 触发器 2. 解答2.1 游标2.2 触发器 1. 题目 1.1 游标 创建存储过程,利用游标依次显示某部门的所有员工的实际收入。(分别用使用 计数器 来循环和使用 标志变量 来控制循环两种方法实现) 创建存储过程,将某部门的员工工资按工作…

前端js调试如何复制console.log打印的对象或数组

在使用console.log()打印我们的内容时,时常需要将打印的内容复制粘贴使用,然而控制台打印出来的对象是经过格式化处理且直接选择粘贴会有格式问题,此时我们可以通过控制台的 copy() 方法来进行打印结果的复制,如图所示&#xff1a…

使用python查找指定文件夹下所有xml文件中带有指定字符的xml文件

文件夹目录如下(需要递归删除文件夹下的.DS_Store文件): labels文件夹下面是xml文件: import os import os.pathpath "name/labels" files os.listdir(path) # 得到文件夹下所有文件名称 s []for xmlFile in files:…

JAVA String 和 String[][]互转的两种方法

第一种方法&#xff1a; <dependency><groupId>com.alibaba</groupId><artifactId>fastjson</artifactId><version>1.2.40</version> </dependency>字符串转数组&#xff1a; String s "[[22,23,23],[1,10,20]]"…

华为云云耀云服务器L实例评测|企业项目最佳实践之云服务器介绍(一)

华为云云耀云服务器L实例评测&#xff5c;企业项目最佳实践系列&#xff1a; 华为云云耀云服务器L实例评测&#xff5c;企业项目最佳实践之云服务器介绍(一) 华为云云耀云服务器L实例评测&#xff5c;企业项目最佳实践之华为云介绍(二) 华为云云耀云服务器L实例评测&#xff5…

【轻松玩转MacOS】指引篇:这9篇指南助你轻松上手

引言 亲爱的读者&#xff0c;欢迎来到《轻松玩转MacOS》&#xff01;这里是专为MacOS新手打造的使用教学专栏&#xff0c;无论您是从Windows转投Mac的初学者&#xff0c;还是对MacOS操作略知一二但希望更进一步的朋友&#xff0c;都能在这里找到您需要的答案。 正文 1、基本…