首页 > 编程语言 >重学java 70.IO流 Commons-io工具包

重学java 70.IO流 Commons-io工具包

时间:2024-06-14 09:31:48浏览次数:15  
标签:重学 java IO io jar IOUtils File 静态方法 String

所有人都不看好你,可你偏偏最争气

                                               —— 24.6.14

一、介绍

        IO技术开发中,代码量很大,而且代码的重复率较高。如果我们要遍历目录,拷贝自录就需要使用方法的递归调用,也增大了程序的复杂度。

二、添加第三方jar包

1.jar包

        本身是一个压缩包,里面装的都是class文件,我们想使用jar包中的工具类,就需要将相应的jar包解压到我们当前的项目下

2.引入jar包

        a.在当前模块下创建文件夹,取名为lib或者libs

        b.将准备好的jar包,放到此文件夹下

        c.对着jar包,右键-> add as library(如果我们想将lib下所有的jar包一起解压,我们就直接对着 lib文件夹右键一起解压

        d.level可以选择module,此时上面叫做name的输入框会变成空的,不用管

        e.直接点ok

三、工具包的使用

Ioutils类

        静态方法:IOUtils.copy(inputstream in,outputstream out)传递字节流,实现文件复制。
        静态方法:IOUtils.closeQuietly(任意流对象)悄悄的释放资源,自动处理close()方法抛出的异常。

        IOUtils.copy(inputstream in,outputstream out)

import org.apache.commons.io.IOUtils;

import java.io.*;

public class Demo285IOUtils {
    public static void main(String[] args) throws IOException {
        // 静态方法:IOUtils.copy(inputstream in,outputstream out)传递字节流,实现文件复制。可以自动关闭资源,自动创建不存在的文件
        IOUtils.copy(new FileInputStream("AllWillBest_Java/4.txt"),new FileOutputStream("AllWillBest_Java/5.txt"));
}

        IOUtils.closeQuietly(任意流对象)

import org.apache.commons.io.IOUtils;

import java.io.*;

public class Demo285IOUtils {
    public static void main(String[] args)  {
        // 静态方法:IOUtils.closeQuietly(任意流对象)悄悄的释放资源,自动处理close()方法抛出的异常。
        FileWriter fw =null;
        try{
            fw = new FileWriter("AllWillBest_Java/5.txt");
            fw.write("AllWillBest_Java\n一切都会好的\n我一直相信");
        }catch (Exception e){
            e.printStackTrace();
        }finally {
            if(fw != null){
                // 最终关闭资源
                IOUtils.closeQuietly(fw);
            }
        }
    }
}

Fileutils类

静态方法:Fileutils.copyDirectoryToDirectory(File src,File dest);

        传递File类型的目录,进行整个目录的复制自动进行递归遍历
                参数:
                        src:要复制的文件夹路径        dest:要将文件夹粘贴到哪里去
静态方法:writeStringToFile(File file,String str)        写字符串到文本文件中。

静态方法:String readFileToString(File file)        读取文本文件,返回字符串。

import org.apache.commons.io.FileUtils;

import java.io.File;
import java.io.IOException;

public class Demo286IOFillUtils {
    public static void main(String[] args) throws IOException {
//        静态方法:FileUtils.copyDirectoryToDirectory(File src,File dest);
//            传递File类型的目录,进行整个目录的复制,自动进行递归遍历。
//                参数:
//                    src:要复制的文件夹路径   dest:要将文件夹粘贴到哪里去
        FileUtils.copyDirectoryToDirectory(new File("\\D:\\2LFE\\Desktop\\java\\我一直相信"),new File("D:\\2LFE\\Desktop\\java\\一切都会好的"));

//        静态方法:writeStringToFile(File file,String str)    字符串到文本文件中。
        FileUtils.writeStringToFile(new File("AllWillBest_Java/5.txt"),"一切都会好的,我一直相信");

//        静态方法:String readFileToString(File file)     读取文本文件,返回字符串。
        String s = FileUtils.readFileToString(new File("AllWillBest_Java/5.txt"));
        System.out.println(s);
    }
}

Fileutils.copyDirectoryToDirectory(File src,File dest); 传递File类型的目录,进行整个目录的复制自动进行递归遍历

 writeStringToFile(File file,String str)        写字符串到文本文件中。

 String readFileToString(File file)        读取文本文件,返回字符串

四、快速记忆IO流对象

五、IO流下 总结

缓冲流

转换流

序列化流

打印流

Properties集合结合IO流使用

IO工具包——CommonsIO

标签:重学,java,IO,io,jar,IOUtils,File,静态方法,String
From: https://blog.csdn.net/m0_73983707/article/details/139665254

相关文章

  • 一篇文章看懂Redission原理
    文章目录☃️可重入锁原理☃️锁重试和WatchDog机制☃️MutiLock原理上一篇文章讲解了Rediision的使用,这篇文章讲解其原理☃️可重入锁原理在Lock锁中,他是借助于底层的一个voaltile的一个state变量来记录重入的状态的,比如当前没有人持有这把锁,那么state=0,假如有人......
  • ArcGIS JSAPI 高级教程 - ArcGIS Maps SDK for JavaScript - 添加自定义(GLSL)数据
    ArcGISJSAPI高级教程-ArcGISMapsSDKforJavaScript-添加自定义(GLSL)数据核心代码完整代码在线示例ArcGISMapsSDKforJavaScript从4.29开始增加RenderNode类,可以添加数据以及操作FBO(ManagedFBO);通过操作FBO,可以通过后处理实现很多效果,官方提供了几......
  • Java性能优化:实用技巧与策略全解析
    引言在软件开发中,性能常常是衡量应用成功的关键因素之一。对于Java应用来说,有效的性能优化不仅可以提高用户满意度,还能降低运营成本。本文将探讨一些高效的Java性能优化技巧,并通过实际代码示例展示如何实施这些策略。垃圾回收优化垃圾收集(GC)是Java性能优化中最关键的部分。......
  • 利用CompletableFuture优化Java中的异步编程
    在现代应用开发中,异步编程是提高应用性能和用户体验的关键技术之一。Java从1.8版本开始引入了CompletableFuture,它为编写非阻塞的异步代码提供了强大的工具。本文将详细介绍CompletableFuture的使用方法,并通过具体代码示例来展示如何在实际项目中应用。什么是CompletableFutur......
  • 【Java】 将字节数组转换为十六进制字符串:Java实现指南
    >>【痕迹】QQ+微信朋友圈和聊天记录分析工具>>(1)纯Python语言实现,使用Flask后端,本地分析,不上传个人数据。>>(2)内含QQ、微信聊天记录保存到本地的方法,真正实现自己数据自己管理。>>(3)数据可视化分析QQ、微信聊天记录,提取某一天的聊天记录与大模型对话。>>下载地......
  • 【Java】 反射机制及其应用
    >>【痕迹】QQ+微信朋友圈和聊天记录分析工具>>(1)纯Python语言实现,使用Flask后端,本地分析,不上传个人数据。>>(2)内含QQ、微信聊天记录保存到本地的方法,真正实现自己数据自己管理。>>(3)数据可视化分析QQ、微信聊天记录,提取某一天的聊天记录与大模型对话。>>下载地......
  • 【Java】 探索Java中遍历文件夹的奥秘:获取文件夹内所有文件名
    >>【痕迹】QQ+微信朋友圈和聊天记录分析工具>>(1)纯Python语言实现,使用Flask后端,本地分析,不上传个人数据。>>(2)内含QQ、微信聊天记录保存到本地的方法,真正实现自己数据自己管理。>>(3)数据可视化分析QQ、微信聊天记录,提取某一天的聊天记录与大模型对话。>>下载地......
  • 【Java】 深入解析Java安全异常:Error - trustAnchors parameter must be non-empty
    >>【痕迹】QQ+微信朋友圈和聊天记录分析工具>>(1)纯Python语言实现,使用Flask后端,本地分析,不上传个人数据。>>(2)内含QQ、微信聊天记录保存到本地的方法,真正实现自己数据自己管理。>>(3)数据可视化分析QQ、微信聊天记录,提取某一天的聊天记录与大模型对话。>>下载地......
  • 安卓应用开发——Android Studio中通过id进行约束布局
    在Android开发中,布局通常使用XML文件来描述,而约束(如相对位置、大小等)可以通过多种方式实现,但直接使用ID进行约束并不直接对应于Android的传统布局系统(如LinearLayout、RelativeLayout等)。然而,从AndroidStudio3.0开始,引入了ConstraintLayout,它允许你通过ID来定义视图之间的约......
  • java写一个验证码
    生成验证码内容:可以是小写字母,也可以是大写字母,还可以是数字规则长度为5内容中是四位字母,1位数字。其中数字只有1位,但是可以出现在任意的位置。packageUser;importjava.util.ArrayList;importjava.util.List;importjava.util.Random;publicclassTest{p......