• 【java】File的使用:将字符串写出到本地文件,大小0kb的原因


    实现方法:

       暂时写一种方法,将字符串写出到本地文件,以后可以补充更多种方法:

     public static void main(String[] args) {
    
            /**
             * ==============准备一些数据-start===============
             */
            String fileName = UUID.randomUUID().toString();
            String filePath = "E:/sxContext"+ "/"+ fileName;
            String content = "";
            StringBuilder stringBuilder = new StringBuilder();
    
            int a = 10;
            for (int i = 0; i < a; i++) {
                  stringBuilder.append(UUID.randomUUID().toString()+"
    
    ");
            }
    
            content = "测试文本文件:
    " + stringBuilder.toString();
    
            /**
             * ==============准备一些数据-end===============
             */
    
    
            /**
             * ===============start-将字符串写出到本地文件=================
             */
            File file = new File(filePath);
    
            //如果父级文件件不存在 则新创建
            File parentFile = file.getParentFile();
            if (!parentFile.exists()){
                parentFile.mkdirs();
            }
    
            FileWriter fw = null;
            BufferedWriter bw = null;
            try {
                if (!file.exists()){
                    file.createNewFile();
                }
                 fw = new FileWriter(file);
                 bw = new BufferedWriter(fw);
    
                 bw.write(content);
                 bw.flush();
    
            } catch (IOException e) {
                e.printStackTrace();
            }finally {
                try {
                    bw.close();
                    fw.close();
                } catch (IOException e) {
                    e.printStackTrace();
                }
            }
            /**
             * ===============end-将字符串写出到本地文件=================
             */
    
    
        }
    View Code

    【注意,

    bw.write(content);

    可以在for循环中多次执行!!!

    如果 担心,可以在执行完bw.write()

    执行:

    bw.flush();

    =======================

    至于将文本内容写出到本地文件中,不管你写出的本地文件是不是txt文件或者没有后缀的文件,只要

    1.父级目录不存在,创建父级目录

    2.file文件判断exist() 如果没有就createNewFile()

    3.将文本写出到本地

    4.flush()

    5.close()

    出现本地文件0kb大小,可能会有以下几种原因:

    1.fileName 中也就是要创建的文件名  中包含了 非法字符,最常见的非法字符就是:冒号  

    2.要么就是没有执行close()正常关闭流

    3.flush()方法可以不用执行 

  • 相关阅读:
    Node-MySQL 官方文档
    ES6对象的扩展
    async 函数的含义和用法
    express如何使用session与cookie
    uni-app 事件
    uni-app 生命周期
    uni-app 底部导航栏
    用于多扩展目标跟踪的线性时间联合概率数据关联
    基于随机超曲面模型的扩展目标跟踪
    18用于大型程序的工具之多重继承与虚继承
  • 原文地址:https://www.cnblogs.com/sxdcgaq8080/p/9277777.html
Copyright © 2020-2023  润新知