博客
关于我
IO 写的文件操作类
阅读量:796 次
发布时间:2019-03-25

本文共 1895 字,大约阅读时间需要 6 分钟。

Java 文件操作工具类详解

操作概述

本工具类提供了一系列文件及目录操作功能,涵盖文本文件操作、目录管理、文件操作等内容,适用于文件管理中常见需求。


主要功能概述

1. 文件读取

public String readTxt(String filePathAndName, String encoding) throws IOException
  • 功能:读取文本文件内容
  • 输入:文件完整路径及编码方式
  • 输出:文件内容字符串
  • 注意:支持默认编码,适用于不同平台文件格式

2. 目录操作

public String createFolder(String folderPath)
  • 功能:新建指定路径的目录
  • 输入:目录完整路径
  • 输出:操作后的路径
  • 支持:单级目录创建

3. 多级目录创建

public String createFolders(String folderPath, String paths)
  • 功能:创建多级目录
  • 示例
    • 调用参数:c:/myfolder a|b|c
    • 创建路径:c:/myfolder/a/b/c
  • 支持:自动处理多级目录创建

4. 文件操作

public void createFile(String filePathAndName, String fileContent)
public void createFile(String filePathAndName, String fileContent, String encoding)
  • 功能:新建文件
  • 注意
    • 非递归创建
    • 支持指定编码方式

5. 文件删除

public boolean delFile(String filePathAndName)
  • 功能:删除指定文件
  • 返回:操作是否成功(true/false)
  • 异常处理:记录错误信息

6. 目录删除

public void delFolder(String folderPath)
  • 功能:删除指定目录及内容
  • 步骤
  • 删除目录内所有文件
  • 删除空目录

7. 文件复制

public void copyFile(String oldPathFile, String newPathFile)
  • 功能:复制单个文件
  • 注意:自动处理文件大小及写入速度

8. 目录复制

public void copyFolder(String oldPath, String newPath)
  • 功能:复制整个目录内容
  • 支持:递归复制文件夹内所有内容

9. 文件移动

public void moveFile(String oldPath, String newPath)
public void moveFolder(String oldPath, String newPath)
  • 功能:移动文件/文件夹
  • 操作流程
    • 复制文件到新位置
    • 删除原文件

工作原理解析

1. 文件读取

  • 输入流读取文件内容
  • 使用BufferedReader加速读取
  • 内容中添加空格分隔

2. 目录操作(createFolder)

  • 使用File对象操作目录
  • 检查目录存在状态
  • 逃mark 创建新目录

3. 多级目录处理

  • 使用StringTokenizer解析路径
  • 递推创建每个目录
  • 维护当前路径

4. 文件创建

  • 检查文件是否存在
  • 创建新文件
  • vysokinds 写入内容

实用方法示例

示例1:创建多级目录

// 调用示例String paths = "a|b|c";String folderPath = "c:/myfolder";String resultPath = createFolders(folderPath, paths); // 返回 c:/myfolder/a/b/c

示例2:创建文件并写入内容

String fileContent = "欢迎使用文件操作工具!";createFile("c:/myfile.txt", fileContent);

示例3:复制文件夹

// 需要复制 directory/ 到 newDirectory/copyFolder("directory/", "newDirectory/");

开发注意事项

  • 异常处理:采用try-catch结构
  • 文件路径:建议使用绝对路径
  • 编码问题:处理不同平台文件编码差异
  • 性能优化:适当缓冲读取和写入

  • 代码架构亮点

  • 简化读写流程:封装了常用操作
  • 支持多种编码方式:灵活处理文本文件
  • 递归操作:实现多级目录和文件夹创建/删除
  • 本工具类代码涵盖了Java文件操作的主要场景,适合开发中常用功能模块,方便日常工作和开发复用。

    转载地址:http://vnguk.baihongyu.com/

    你可能感兴趣的文章
    Nacos源码分析:心跳机制、健康检查、服务发现、AP集群
    查看>>
    nacos看这一篇文章就够了
    查看>>
    Nacos简介、下载与配置持久化到Mysql
    查看>>
    Nacos简介和控制台服务安装
    查看>>
    Nacos管理界面详细介绍
    查看>>
    Nacos编译报错NacosException: endpoint is blank
    查看>>
    nacos自动刷新配置
    查看>>
    nacos运行报错问题之一
    查看>>
    Nacos部署中的一些常见问题汇总
    查看>>
    NACOS部署,微服务框架之NACOS-单机、集群方式部署
    查看>>
    Nacos配置Mysql数据库
    查看>>
    Nacos配置中心中配置文件的创建、微服务读取nacos配置中心
    查看>>
    Nacos配置中心集群原理及源码分析
    查看>>
    nacos配置在代码中如何引用
    查看>>
    nacos配置新增不成功
    查看>>
    nacos配置自动刷新源码解析
    查看>>
    nacos集成分布式事务插件Seata的序列化问题,实际上是Seata本身存在bug!!
    查看>>
    Nacos集群搭建
    查看>>
    nacos集群搭建
    查看>>
    nacos集群网络分区对的影响和运维方式
    查看>>