最近公司在申请专利,编写不少文档,项目的代码量实在是过于庞大。如果一个一个的复制粘贴虽然能够完成,但是对于程序员而言实在没有这个必要。shell或者python就能解决这个问题。由于我个人对于shell和python不是非常熟练的情况下,因此我使用Java来实现这个目的。

该脚本称不上完全自动化,顶多算是半自动化,因为需要精确到对应的包下,才能将对应的Java代码全部输出。不然的话,除了会将Java代码输出到txt文件,同时也会将一些不必要的xml和其他相关的文件一起输出,这样一来会显得很混乱。因此采取这种半自动化的方案临时解决体力劳动,提高一定的效率。

这段代码大家可以根据自行需要去修改它。

源代码如下:

package cn.test;import java.io.BufferedReader;
import java.io.BufferedWriter;
import java.io.File;
import java.io.FileReader;
import java.io.FileWriter;
import java.io.Writer;/*** 申请软著代码复制删除注释和空行*/
public class Test {public static void main(String[] args) throws Exception {//文件读取路径File dir = new File("E://实验API//workspace//test-saas//test-common//src//main//java//com//test//sass//custome");//文件输出路径File target = new File("C://Users//test//Desktop//out.txt");BufferedWriter bw = new BufferedWriter(new FileWriter(target));StringBuffer sb = new StringBuffer();loopRead(dir, sb);write(sb.toString(), bw);}// 遍历文件夹下所有文件private static void loopRead(File dir, StringBuffer sb){File[] files = dir.listFiles();if (files!=null)for(File file:files){if(file.isDirectory()){loopRead(file, sb);}else {if(file.length()!=0){sb.append(readFileToString(file));}}}}//读取文件里面的内容private static String readFileToString(File file){BufferedReader br = null;StringBuilder sb = new StringBuilder();try {br = new BufferedReader(new FileReader(file));String line = null;while((line = br.readLine())!=null){String s = line.trim();if (s.length()==0) {continue;}if (s.startsWith("/") || s.startsWith("*")) {continue;}sb.append(line).append("\n");}} catch (Exception e) {e.printStackTrace();}finally{try {if(br!=null){br.close();}} catch (Exception e2) {e2.printStackTrace();}}return sb.toString();}//将读取的路径以及相应的内容写入指定的文件private static void write(String str, Writer writer){try {writer.write(str);} catch (Exception e) {e.printStackTrace();}finally{try {if(writer!=null)writer.close();} catch (Exception e2) {e2.printStackTrace();}}}
}

转载于:https://www.cnblogs.com/youcong/p/10098948.html

Java代码输出到txt文件(申请专利贴源码的必备利器)相关推荐

  1. java代码实现读写txt文件(txt文件转换成java文件)

    项目中要求批量txt文件可以转换为java文件或xml文件,以下主要是总结的几种IO读写的方法:    1.按行读写txt文件和java文件,以treemap默认升序的有序map类型保存读写的结果转换 ...

  2. 用简单Java代码尝试在控制台写游戏(附源码)

    尝试写了一个在Java控制台运行的代码游戏,由于写这个的时候,博主还没学到可视化界面,也没有学到面向对象,甚至没有集合,运用的全是之前C语言的语法,因此应该很容易看懂吧.末尾附上源码. 以下是效果展示 ...

  3. 弹球小游戏java代码_android 发射弹球小游戏 附完整源码下载

    [实例简介]android 弹球游戏制作 [实例截图]  [核心代码] package wyf.ytl; //声明包语句 public class BallGoThread extends Threa ...

  4. java输出到txt 换行_Java输出到txt文件时如何加换行符

    Java输出到txt文件时如何加换行符 时间:2017-09-18     来源:华清远见JAVA学院 知道Java输出到txt文件时如何加换行符吗?今天华清Java学院小编就和大家分享三种Java输 ...

  5. Java读取UTF-8格式txt文件第一行出现乱码及解决;Java读带有BOM的UTF-8文件乱码原因及解决方法(转载)...

    原文地址:http://blog.csdn.net/jackpk/article/details/5702964/ Java读取UTF-8的txt文件第一行出现乱码"?"及解决 t ...

  6. Java点击按钮加一行数据_java - 单击按钮java时如何从txt文件绘制下一行? - SO中文参考 - www.soinside.com...

    单击按钮java时如何从txt文件绘制下一行? 问题描述 投票:0回答:1 import javax.swing.*; import java.awt.*; import java.awt.event ...

  7. Hadoop环境下用java代码实现hdfs远程文件的上传和下载

    Hadoop环境下用java代码实现hdfs远程文件的上传和下载 文章目录 Hadoop环境下用java代码实现hdfs远程文件的上传和下载 一.新建maven工程 二.文件的上传 三.文件的下载 四 ...

  8. eclipse编译java项目class文件_动态编译 Java 代码以及生成 Jar 文件

    导读: 最近在看 Flink 源码的时候发现到一段实用的代码,该代码实现了 java 动态编译以及生成 jar 文件.将其进行改进后可以应用到我们的平台上,实现在平台页面上编写 java 代码语句,提 ...

  9. adb logcat 通过包名过滤日志并输出到txt文件

    最近学使用ADB命令抓包APP闪退的日志: 1)在cmd命令行中可以使用adb logcat 命令查看android系统的log,也可以使用adb shell进入到adb shell专用命令行 2)d ...

最新文章

  1. Hasor:生命周期
  2. Python知识图谱
  3. GDCM:读取和转储DICOMDIR文件的测试程序
  4. logstash-filter模块
  5. 写好项目文档有多重要?关于我被百大 UP 主选中又放鸽子这档事
  6. group anagrams leetcode java_LeetCode第[49]题(Java):Group Anagrams
  7. Java基础学习总结(93)——Java编码规范之代码性能及惯例
  8. go模板引擎生成html,goweb-模板引擎
  9. win7下 Windows Process Activation Service 服务导致的 iis无法启动的解决方法
  10. 关于数字化营销,最通俗的讲解在这里
  11. 常用的3D三维建模软件大全有哪些?
  12. C语言学生档案表设计——作业
  13. android虚线边框_Android自定义View之绘制虚线
  14. dbt2 mysql_mysql压力测试工具-DBT2 Benchmark Tool下载0.37.50.14-西西软件下载
  15. RecyclerView侧滑删除按钮
  16. python_并发编程
  17. 复选框判断是否选中及获取值
  18. 重庆华南城开业运营发布会暨华南城APP上线仪式圆满成功
  19. MySQL中PreparedStatement sql中in的引号问题
  20. 性能测试场景设计方法(教科书版)

热门文章

  1. 线性回归 c语言实现_C ++中的线性回归实现
  2. 概率编程编程_概率编程语言的温和介绍
  3. 职业相关课程学习笔记
  4. Ubuntu系统下bash和dash的区别(修改默认sh为bash)
  5. 开榨油店的失败教训_想开水果店没有经验?线下开水果店经营心得分享,或许你用得上...
  6. android自定义游戏闯关图,Android自定义View(四) -- Canvas
  7. linux tmux 详细教程,Linux下的神器介绍之Tmux分屏器
  8. new 实例化对象是啥意思_二. 初步认识JS中的类和对象
  9. linux 神的编辑器,编辑器之神-vim的使用,编辑器神-vim
  10. 卡牌大师怎么玩_用卡牌大师如何上分