Java读取文件内容

        在这里我们采取的是用BufferReader这个类来做这件事情,因为需求我需要将cs文件转换成Java文件 是pojo那一层哦,他们语法类似所以我就打算使用BufferReader去读取然后再对文件的内容根据一定规则进行更改,之前100多个类 自己手动去改属实嗦仔了哈哈哈,还好咱们老大给了我启发。为什么不自己写一个工具类呢 几秒钟100多个类全改完了。

       因为规则还是比较多的 所以在这里,我强力推荐xmind

 需求一列出来,这不清晰明了了

代码:

     /**
     * 对单个文件进行操作
     * @param absolute
     */
    public static void handlerFile(String absolute){
        //读取文件内容
        BufferedReader bufferedReader= null;
        try {
            StringBuffer stringBuffer=new StringBuffer();
            FileInputStream inputStream = new FileInputStream(absolute);
            bufferedReader = new BufferedReader(new InputStreamReader(inputStream));
            //用来保存每一行的数据
            String line;
            line = bufferedReader.readLine();
            while (line!=null){
                stringBuffer.append(line);
                stringBuffer.append("\n");
                line = bufferedReader.readLine();
            }
            logger.info("-------------------line\n"+stringBuffer);
        } catch (FileNotFoundException e) {
            e.printStackTrace();
        } catch (IOException e) {
            e.printStackTrace();
        }

这里咱们用到了一个StringBuffer哦,为什么咱们不用StringBuilder呢,这两者的选择也是一个常见的面试题哦,刚好有应用场景,所以在这里我讲一下。

首先,

StringBuffer,线程安全,同步

StringBuilder,线程不安全,非同步

这两者一对比,非同步,那当然更快啦 但是不安全嘛,结论就是StringBuffer 线程安全,但是效率低,StringBuilder线程不安全,效率高

回到咱们这个场景,咱们自己用来生成文件的 对性能也没啥要求 100多个文件也慢不到哪去,而且这些数据很重要,不能丢失 不然影响后面生成的Java 的实体类,所以在这里咱们选择StringBuffer。

效果:

 

看这不全读出来啦~ 

  • 2
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值