Java语言程序设计——篇十三(4)

在这里插入图片描述
在这里插入图片描述

       🌿🌿🌿跟随博主脚步,从这里开始→博主主页🌿🌿🌿

  • 欢迎大家:这里是我的学习笔记、总结知识的地方,喜欢的话请三连,有问题可以私信🌳🌳🌳
    您的点赞👍、关注➕、收藏⭐️、评论📝、私信📧是我最大的支持与鼓舞!!!🌻🌻🌻

在这里插入图片描述

java.nio.file.Files类操作

  • 创建、删除目录与文件
  • 文件属性操作
  • 复制、移动目录与文件
  • 小文件的读写
  • 使用Files类创建流对象

创建、删除目录与文件

  • Files类提供了下面的方法创建、删除目录和文件
    static Path createDirectory(Path dir) static Path createFile(Path file)static void delete(Path path)static void deleteIfExists(Path path)
  • 可抛出FileAlreadyExistsException, NoSuchFileException,
    DirectoryNotEmptyException异常。

文件属性操作

  static boolean exists(Path path)  static boolean notExists(Path path) static boolean isReadable(Path path) static boolean isWritable(Path path) static boolean isExecutable(Path path) static boolean isRegularFile(Path path)static long size(Path path) static boolean isDirectory(Path path) static boolean isHidden(Path path) static FileTime getLastModifiedTime(Path path)

复制、移动目录与文件

  • 使用Files类的copy()方法可以复制文件和目录。
   static Path copy(Path source, Path target, CopyOption…options)// StandardCopyOption枚举是CopyOption接口的一个实现:
ATOMIC_MOVE
COPY_ATTRIBUTES
REPLACE_EXISTING
Path source = Paths.get("D:\\study\\demo\\report.txt"),target = Paths.get("D:\\study\\demo\\backup.txt");
try {Files.copy(source, target,StandardCopyOption.REPLACE_EXISTING); 
}catch (NoSuchFileException nse) {nse.printStackTrace();
}catch (IOException ioe) {ioe.printStackTrace();
}
  • 使用Files类的move()方法可以移动或重命名文件或目录,格式如下:
     static Path move(Path source, Path target, CopyOption…options)// StandardCopyOption枚举是CopyOption接口的一个实现:
ATOMIC_MOVE
COPY_ATTRIBUTES
REPLACE_EXISTING
  • 以下代码将C:\temp\backup.bmp文件移到C:\data目录中。
  Path source = Paths.get("C:\\temp\\backup.bmp");Path target = Paths.get("C:\\data\\backup.bmp");try {   Files.move(source,target,StandardCopyOption.REPLACE_EXISTING);}catch(IOException e){e.printStackTrace();} 

小文件的读写

  • Files类提供了对较小的二进制文件和文本文件读取和写入的方法。
   static Path write(Path path, byte[] bytes,OpenOption…options)//StandardOpenOption枚举是OpenOption接口的一个实现:
APPEND, CREATE
CREATE_NEW, DELETE_ON_CLOSE
READ, WRITE, TRUNCATE_EXISTING
  • 下面方法向文件写入若干行。
static Path write(Path path,                                             Iterable<extends CharSequence> lines, Charset cs,   OpenOption…options)
  • 使用下面方法可以从文件读取所有字节或行:
   static byte[] readAllBytes(Path path)static List<String> readAllLines(Path path, Charset cs) 

使用Files类创建流对象

  • 调用Files.newInputStream()获得与文件关联的InputStream对象来读取数据。
  • 调用Files.newOutputStream() 获得与文件关联的OutputStream对象向文件写数据。
  • newInputStream()方法格式如下:
    static InputStream newInputStream(Path path,  OpenOption…options) throws IOException
  Path path = Paths.get("src\\output.dat");try(InputStream input = Files.newInputStream(path,StandardOpenOption.READ) ){// 操作input输入流对象}catch(IOException e){// 处理异常}
  • newOutputStream()方法格式如下:
    static OutputStream newOutputStream(Path path, OpenOption…options) throws IOException
  Path path = Paths.get("src\\output.dat");try(OutputStream output = Files.newOutputStream(path,StandardOpenOption.CREATE,  StandardOpenOption.APPEND);BufferedOutputStream buffered = new   BufferedOutputStream(output)  )
{// 操作output输出流对象}catch(IOException e){// 处理e的异常信息  }
  • 使用Files类的newBufferedReader()和newBufferedWriter()方法也可创建BufferedReader和BufferedWriter对象。
static BufferedReader newBufferedReader(Path path, Charset charset)
static BufferedWriter newBufferedWriter(Path path, Charset charset, OpenOption…options)  

博主用心写,读者点关注,互动传真情,知识不迷路。

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

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

相关文章

仪表板展示|DataEase看中国:2024巴黎奥运会中国体育代表团战绩报告

背景介绍 北京时间2024年8月12日凌晨&#xff0c;巴黎奥运会闭幕。在本届奥运会中&#xff0c;我们不仅见证了许多新世界纪录的诞生&#xff0c;更看到了中国体育的强大实力与无限潜力。中国运动健儿们卓越的表现和顽强的拼搏精神&#xff0c;不但让国人为之自豪&#xff0c;也…

Windows 11 Build 27686 上手体验:2TB FAT32、更好的沙盒等功能

Windows 11 Build 27686 现已在 Insider Program 的 Canary 频道发布&#xff0c;其中包含一些有趣的内容。该版本确认了微软更改 FAT32 大小限制的计划&#xff0c;并将其大小限制从 32GB 提高到 2TB。与此同时&#xff0c;沙盒也得到了改进。让我们来详细了解一下此次更新。 …

【卡码网Python基础课 16.出现频率最高的字母】

目录 题目描述与分析描述2.分析 一、哈希表二、代码编写 题目描述与分析 描述 题目描述&#xff1a; 给定一个只包含小写字母的字符串&#xff0c;统计字符串中每个字母出现的频率&#xff0c;并找出出现频率最高的字母&#xff0c;如果最高频率的字母有多个&#xff0c;输出…

Nginx--虚拟机配置

前言&#xff1a;本博客仅作记录学习使用&#xff0c;部分图片出自网络&#xff0c;如有侵犯您的权益&#xff0c;请联系删除 1、什么是虚拟主机 虚拟主机是一种特殊的软硬件技术&#xff0c;它可以将网络上的每一台计算机分成多个虚拟主机&#xff0c;每个虚拟主机可以独立对…

字符串函数!!!(续)(C语言)

一. strtok函数的使用 继续上次的学习&#xff0c;今天我们来认识一个新的函数strtok&#xff0c;它的原型是char* strtok(char* str,const char* sep)&#xff0c;sep参数指向了一个字符串&#xff0c;定义了用作分隔符的字符合集&#xff0c;第一个参数指定⼀个字符串&#…

基于C# winform部署图像动漫化AnimeGANv2部署onnx模型

【界面截图】 【效果演示】 【部分实现代码】 using System; using System.Diagnostics; using System.Windows.Forms; using OpenCvSharp;namespace FIRC {public partial class Form1 : Form{Mat src null;public Form1(){InitializeComponent();}private void button1_Cli…

消息系统-WebSocket消息推送

消息系统-WebSocket消息推送 接口层使用消息通知 1.数据库设计: 1.消息通知表 2.消息记录表 3.用户表和角色表及用户角色记录表 2.设计: 未使用消息中间件 ,利用接口层调用消息通知接口工具类 3.前端:消息通知页面 1.消息通知列表 2.消息通知标签 3.消息通知未读抽屉列表 一.…

Ubuntu离线安装库并解决依赖关系

&#xff08;1&#xff09;起因 安装插件出现库未找到的错误 configure: error: curses library is required but not found.&#xff08;2&#xff09;解决方法 手动到Ubuntu的库发布网页下载 http://packages.ubuntu.com/ 选择系统对应架构的版本下载&#xff0c;然后上传…

django(REST_FRAMEWORK)+swagger+Apifox 集成

1.reset_framework 1.1安装rest_framework 1.2使用rest_framework 在django框架中setting文件中注册rest_framework INSTALLED_APPS [rest_framework, ]2.reset_frameworkswagger 2.1.安装drf_yasg 2.2.在django框架中setting文件中注册drf_yasg INSTALLED_APPS [drf_…

滴滴开源新项目Unify:聚焦Flutter与原生通信难题,助力跨端应用落地

引言 在移动开发领域&#xff0c;移动跨端技术因其提效收益&#xff0c;逐渐成为业界趋势之一。Flutter 作为近年来热门的跨端技术&#xff0c;以高性能、自渲染、泛跨端著称&#xff0c;得到广泛应用。在滴滴国际化业务中&#xff0c;我们大量应用 Flutter。目前已在滴滴国际化…

【大模型部署及其应用 】RAG检索技术和生成模型的应用程序架构:RAG 使用 Meta AI 的 Llama 3

目录 RAG检索技术和生成模型的应用程序架构1. **基本概念**2. **工作原理**3. **RAG的优势**4. **常见应用场景**5. **RAG的挑战**6. **技术实现**参考RAG 使用 Meta AI 的 Llama 3亲自尝试运行主笔记本与文档应用聊天关键架构组件1. 自定义知识库2. 分块3. 嵌入模型4. 矢量数据…

PHP多商家营销活动平台系统小程序源码

解锁营销新境界&#xff01;「多商家营销活动平台」让你的品牌火出圈✨ &#x1f680;【聚合力量&#xff0c;共创辉煌】&#x1f680; 在这个竞争激烈的市场中&#xff0c;单打独斗早已不是最佳选择&#xff01;「多商家营销活动平台」横空出世&#xff0c;它像一座桥梁&…

关于Python3项目中依赖包管理问题

背景&#xff1a;最近在使用Python3.11编写脚本来获取google play中app的用户评论&#xff0c;脚本中需要安装多个依赖包&#xff0c;在本地Pycharm调试通过以后&#xff0c;上传到github&#xff0c;然后在linux服务器拉取脚本来运行&#xff0c;发现存在几个问题。本文将面临…

Qt登录窗口设计

widget.h #ifndef WIDGET_H #define WIDGET_H#include <QWidget> #include <QIcon> //图标类 #include <QPushButton> #include <QLineEdit> //行编辑 #include <QLabel> #include <QTextEdit> #include <QMovie>class Widge…

django中的MESSAGE组件

文章目录 message组件1 使用配置2 设置值3 读取值4 源码分析 message组件 1 使用配置 INSTALLED_APPS [# django.contrib.admin,# django.contrib.auth,# django.contrib.contenttypes,# django.contrib.sessions,django.contrib.messages,django.contrib.staticfiles,"…

vuex的原理和使用方法

简介 Vuex 是 Vue.js 应用的状态管理模式&#xff0c;它为应用内的所有组件提供集中式的状态&#xff08;数据&#xff09;管理。可以帮我们管理 Vue 通用的数据 (多组件共享的数据)。 Vuex的构成 state&#xff1a;state 是 Vuex 的数据中心&#xff0c;也就是说state是用来…

修改系统启动环境变量

修改系统启动环境变量 查看uboot默认env 首先连接好开发板的串口终端&#xff0c;在开发板上后&#xff0c;一直快速短按 空格键 即可进入 uboot的 shell 交互命令行内。在命令行内输入 print 命令&#xff0c;可以看到当前系统的所有环境变量。 > print aw-ubi-spinand…

[DL]深度学习_针对图像恢复的高效扩散模型DiffIR

DiffIR: Efficient Diffusion Model for Image Restoration Abstract 扩散模型(DM)通过将图像合成过程建模为去噪网络的顺序应用&#xff0c;实现了SOTA的性能。然而&#xff0c;与图像合成不同的是&#xff0c;图像恢复(IR)对生成符合ground-truth的结果有很强的约束。因此&am…

【Linux基础】Linux中的开发工具(1)--yum和vim

目录 ✈️前言一&#xff0c;Linux 软件包管理器 yum1. 什么是软件包2. 如何安装软件3. 如何卸载软件 二&#xff0c;Linux编辑器-vim使用1. vim的基本概念1.1 命令/正常/普通模式1.2 插入模式1.3 底行模式 三&#xff0c;vim命令模式命令集1. 移动光标2. 删除字符3. 复制4. 替…

用python制作88键赛博钢琴(能用鼠标键盘进行弹奏)

用python制作88键赛博钢琴 前言 恭喜这位博主终于想起了自己的账号密码&#xff01; 时光荏苒&#xff0c;转眼间已逾一年未曾在此留下墨香。尽管这一年间&#xff0c;博主投身于无尽的忙碌与挑战之中&#xff0c;但令人欣慰的是&#xff0c;那份初心与热情似乎并未因岁月的流…