怎样批量去掉java文件中的注释

怎样批量去掉java文件中的注释,第1张

批量去掉Java文件中的注释,可以使用正则表达式进行批量 *** 作,代码如下:

import java.io.BufferedReader  

import java.io.BufferedWriter  

import java.io.File  

import java.io.FileInputStream  

import java.io.FileOutputStream  

import java.io.IOException  

import java.io.InputStream  

import java.io.InputStreamReader  

import java.io.OutputStream  

import java.io.OutputStreamWriter  

 

public class CopyJava {  

 

    public static void main(String[] args) throws IOException {  

        copy("e:/src", "e:/desc") // 这里写好源文件夹和目的文件夹  

    }  

 

    private static void copy(String srcPath, String descPath) throws IOException {  

        copy(new File(srcPath), new File(descPath))  

    }  

 

    private static void copy(File srcFile, File descFile) throws IOException {  

        if (srcFile.isFile()) { // 文件  

            File parent = descFile.getParentFile()  

            if (!parent.exists()) {  

                parent.mkdirs() // 创建文件夹  

            }  

            if (srcFile.getName().endsWith(".java")) {  

                copyJava(srcFile, descFile)  

            } else {  

                copyFile(srcFile, descFile)  

            }  

        } else { // 文件夹  

            for (File file : srcFile.listFiles()) {  

                // 相对路径  

                String srcPath = file.getAbsolutePath().substring(srcFile.getAbsolutePath().length())  

                copy(file, new File(descFile.getAbsolutePath() + srcPath))  

            }  

        }  

    }  

 

    private static void copyJava(File srcFile, File descFile) throws IOException {  

        BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(new FileOutputStream(descFile)))  

        BufferedReader br = new BufferedReader(new InputStreamReader(new FileInputStream(srcFile)))  

        String line  

        while ((line = br.readLine()) != null) {  

            bw.write(line.replaceFirst("/\\*     \\*/", "")) // 注意这里,如果不行,要适当修改  

            bw.write("\n")  

        }  

        br.close()  

        bw.close()  

    }  

 

    private static void copyFile(File srcFile, File descFile) throws IOException {  

        OutputStream output = new FileOutputStream(descFile)  

        InputStream input = new FileInputStream(srcFile)  

        byte[] buffer = new byte[1024 * 4]  

        int n = 0  

        while ((n = input.read(buffer)) != -1) {  

            output.write(buffer, 0, n)  

        }  

        input.close()  

        output.close()  

    }  

 

}

选中代码 ctrl+/ 是每一行代码前面加注释 //

ctrl+shift+/ 是/* */注释

取消是同样的 *** 作,已有注释的就会取消没有就会加注释(前提是你已经设置了快捷键,我说的这些是默认的快捷键eclipse中的)


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/8040826.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-12
下一篇 2023-04-12

发表评论

登录后才能评论

评论列表(0条)

保存