注释和取消注释 程序中的log日志
有点简单,但也是原创哦。。亲测有效,期待指正。
更改了log多行的问题。。
例如//Log
Util;
一、注释log
import java.io.BufferedReader;
import java.io.File;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.FileReader;
import java.io.IOException;
public class CommentLog {
public static String dirpath = "/home/google/com";
// public static String dirpath = "/home/java";
public static String filepath = "/home/java/test1";
public static String newStr = "LogUtil.";
public static String oldStr = "//LogUtil.";
public static boolean judge = false;
public static String str = null;
public static boolean MyPanduan(String str) {
String strTest = str.trim();
if(!strTest.endsWith(";")) {
judge = true;
} else {
judge = false;
}
return judge;
}
public static void writeStrtoFile(StringBuffer sb1, String path) {
try {
String sb = "" + sb1;
FileOutputStream fos = new FileOutputStream(path, false);// true原有续写,false是追加。如果源文件不存在就新建了
fos.write(sb.getBytes());
fos.close();
} catch (Exception e) {
e.printStackTrace();
}
}
public static void replaceDir(String Mdirpath) {
File file = new File(Mdirpath);
if (file.isDirectory()) {
File[] tempList = file.listFiles();
for (File fi : tempList) {
if (fi.isFile()) {
if (!fi.getAbsoluteFile().equals("LogUtil.java")) {
replaceFile(fi.getAbsolutePath());
}
judge = false;
} else {
replaceDir(fi.getAbsolutePath());
}
}
}
}
public static void replaceFile(String path) {
try {
// read file content from file
StringBuffer sb = new StringBuffer("");
FileReader reader = new FileReader(path);
BufferedReader br = new BufferedReader(reader);
while ((str = br.readLine()) != null) {
if (str.contains(newStr)) {
str = str.replaceAll(newStr, oldStr);
MyPanduan(str);
sb.append(str);
} else {
if (judge == true) {
str = "//".concat(str);
MyPanduan(str);
}
sb.append(str);
}
sb.append("\n");
}
br.close();
reader.close();
if (sb != null) {
writeStrtoFile(sb, path);
}
}
catch (FileNotFoundException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
}
public static void main(String[] args) {
replaceDir(dirpath);
}
}
二、取消注释
import java.io.BufferedReader;
import java.io.BufferedWriter;
import java.io.File;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.FileReader;
import java.io.FileWriter;
import java.io.IOException;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
public class CancelCommentLog {
public static String dirpath = "/home/google/com";
//public static String dirpath = "/home/java";
public static String filepath = "/home/java/test1";
public static String newStr = "LogUtil";
public static String oldStr = "//LogUtil";
public static boolean judge = false;
public static String str = null;
public static boolean MyPanduan(String str) {
str = str.trim();
if(!str.endsWith(";")){
judge = true;
} else {
judge = false;
}
return judge;
}
public static void writeStrtoFile(StringBuffer sb1, String path) {
try {
String sb = ""+sb1;
FileOutputStream fos = new FileOutputStream(path, false);// true原有续写,false是追加。如果源文件不存在就新建了
fos.write(sb.getBytes());
fos.close();
} catch (Exception e) {
e.printStackTrace();
}
}
public static void replaceDir(String Mdirpath){
File file = new File(Mdirpath);
if (file.isDirectory()) {
File[] tempList = file.listFiles();
for (File fi : tempList) {
if (fi.isFile()) {
replaceFile(fi.getAbsolutePath());
judge = false;
}
else{
replaceDir(fi.getAbsolutePath());
}
}
}
}
public static void replaceFile(String path){
try {
// read file content from file
StringBuffer sb= new StringBuffer("");
FileReader reader = new FileReader(path);
BufferedReader br = new BufferedReader(reader);
while((str = br.readLine()) != null) {
String regEx=" +//LogUtil";
String regEx1="//LogUtil";
Pattern pat=Pattern.compile(regEx);
Pattern pat1=Pattern.compile(regEx1);
Matcher mat=pat.matcher(str);
Matcher mat1=pat1.matcher(str);
if(mat.find()){
str=mat.replaceAll(newStr);
MyPanduan(str);
sb.append(str);
}
else if(mat1.find()){
str=mat1.replaceAll(newStr);
MyPanduan(str);
sb.append(str);
}else{
if(judge == true){
str =str.replaceAll("//", " ");
MyPanduan(str);
}
sb.append(str);
}
sb.append("\n");
}
br.close();
reader.close();
if(sb!=null){
writeStrtoFile(sb,path);
}
}
catch(FileNotFoundException e) {
e.printStackTrace();
}
catch(IOException e) {
e.printStackTrace();
}
}
public static void main(String[] args) {
replaceDir(dirpath);
}
}
注释和取消注释 程序中的log日志的更多相关文章
- 程序中编写log日志
public string logFile; ; private Stream s = null; StreamWriter sw = null; /// <summary> /// 用l ...
- Eclipse中各种文件的注释与取消注释的快捷键
Eclipse中各种文件的注释与取消注释的快捷键 Java文件: 注释和取消注释的快捷键都是:CTRL + / 或 Shift+Ctrl+C JS文件: 注释和取消注释的快捷键都是:CTRL + / ...
- IDEA XML注释与取消注释快捷键
IntelliJ IDEA和eclipse中编辑Java文件时,注释和取消注释的快捷键都是: "CTRL + / " 编辑xml文件时, 注释:CTRL + SHIFT + / 取 ...
- XML注释与取消注释快捷键
IntelliJ IDEA和eclipse中编辑Java文件时,注释和取消注释的快捷键都是: "CTRL + / " 编辑xml文件时, 注释:CTRL + SHIFT + / 取 ...
- matlab 大块注释和取消注释的快捷键
matlab 大块注释和取消注释的快捷键 注释:Ctrl+R 取消注释:Ctrl +T
- 在C#中winform程序中应用nlog日志工具
在C#中winform程序中应用nlog日志工具,配置文件简单应用. 文件名 nlog.config,请注意修改属性为"始终复制",发布时候容易遇到不存在文件的错误提示. 通过Nu ...
- 如何在xml文件中加注释或取消注释
1)加注释:Ctrl+Shift+/ 2)取消注释:Ctrl+Shift+\ 本文欢迎转载,但请注明作者与出处: 作者:Sophia 出处:http://www.cnblogs.com/Sophia- ...
- Visual Studio 注释与取消注释快捷键
注释: 先CTRL+K,然后CTRL+C 取消注释: 先CTRL+K,然后CTRL+U
- VS注释与取消注释快捷键
最近在使用VS2010开发ASP.Net,突然发现想全部注释时找不到注释的快捷键,网上查了下,原来很简单,只是需要使用组合键. 注释: 先CTRL+K,然后CTRL+C 取消注释: 先C ...
随机推荐
- 1、zookeeper集群安装
前提准备3台centos7.0虚拟机 c7003:192.168.70.103 c7004:192.168.70.104 c7005:192.168.70.105 并在三台虚拟机上配置hosts为 1 ...
- Django的 admin管理工具
admin组件使用 Django 提供了基于 web 的管理工具. Django 自动管理工具是 django.contrib 的一部分.你可以在项目的 settings.py 中的 INSTALLE ...
- loadrunner怎么解决录制完成后脚本为空
第一步: 第二步: 设置完后就Ok了
- 经典收藏链接(C#总结)
去年底转到Java,在此总结一下.很多不错的C#博客在此收藏标记\(^o^)/~ 1.基础知识 Linq专题:http://www.cnblogs.com/RuiLei/archive/2009/09 ...
- matlab下将图片序列转化为视频文件 && 将为视频文件转化图片序列
将图片序列转化为视频文件 程序如下: framesPath = 'E:\img\';%图像序列所在路径,同时要保证图像大小相同 videoName = 'Bolt.avi';%表示将要创建的视频文件的 ...
- Java 集合 线程安全
Java中常用的集合框架中的实现类HashSet.TreeSet.ArrayList.ArrayDeque.LinkedList.HashMap.TreeMap都是线程不安全的,如果多个线程同时访问它 ...
- Vue 路由的编程式导航与history模式
编程式导航 注意:官方文档写错了 通过javascript跳转 //第一种跳转方式 // this.$router.push({ path: 'news' }) // this.$router.pus ...
- Installation of Scylla on CentOS 7
Scylla on CentOS 7 Use these steps to install Scylla using Yum repositories on CentOS. Prerequisites ...
- (6/24) 插件配置:轻松配置JS文件压缩
实际开发中,在项目上线之前,我们编写的js代码是需要进行压缩的,我们可以采取压缩软件或者在线进行压缩,这不是我们的重点,在webpack中实现JS代码的压缩才是本节的核心. 通过webpack中可实现 ...
- bootStrap 教程 文档
参考1: https://www.w3schools.com/bootstrap/default.asp 参考1:http://www.runoob.com/bootstrap/bootstrap-i ...