zoukankan      html  css  js  c++  java
  • 模仿jdk编译代码去除注释,多行注释

    package com.jachs.mvc;
    
    import java.*;
    import ch.qos.logback.classic.net.SyslogAppender;
    /****
     * 
     * @author zhanchaohan
     *
     */
    public class testFile {
        //一段注释
        public String name;
        /****
         * 多行注释
         * @return
         */
        public String getText() {
            return this.name;
        }
        //又是一行注释
        private void syso() {
            System.out.println("打印");
        }
        
    }

    以上是测试用的java类。

    一下是去除注释代码

    package com.jachs.mvc;
    
    import java.io.BufferedReader;
    import java.io.File;
    import java.io.FileReader;
    import java.util.ArrayList;
    import java.util.List;
    import java.util.Random;
    
    import org.apache.commons.lang3.RandomUtils;
    import org.junit.Test;
    
    import com.fasterxml.jackson.databind.util.ArrayBuilders.BooleanBuilder;
    
    import net.sourceforge.pinyin4j.format.HanyuPinyinCaseType;
    import net.sourceforge.pinyin4j.format.HanyuPinyinOutputFormat;
    import net.sourceforge.pinyin4j.format.HanyuPinyinToneType;
    import net.sourceforge.pinyin4j.format.HanyuPinyinVCharType;
    
    public class test {
        @Test
        public void test() {
            try {
                File file=new File("C:\Users\Jachs\Downloads\mvc\src\main\java\com\jachs\mvc\testFile.java");
                BufferedReader br=new BufferedReader(new FileReader(file));
                String line="";
                boolean breakContinue=false;
                while(br.ready()) {
                    line=br.readLine();
                    if(line.trim().startsWith("//")) {
                        continue;
                    }
                    if(line.trim().startsWith("/*")) {
                        breakContinue=true;
                    }
                    if(line.trim().endsWith("*/")) {
                        breakContinue=false;
                        continue;
                    }
                    if(!breakContinue)
                    System.out.println(line);
                }
                br.close();
            }catch(Exception e) {
                e.printStackTrace();
            }
        }
    }
  • 相关阅读:
    ID3、C4.5、CART、RandomForest的原理
    C4.5,CART,randomforest的实践
    logistic原理与实践
    knn原理与实践
    Naive Bayes理论与实践
    Apriori原理与实践
    数据科学家应了解的内容
    数据分析常见的七种思路
    响应式网站宽度分隔
    HTML5的 input:file上传类型控制
  • 原文地址:https://www.cnblogs.com/zhanchaohan/p/9455600.html
Copyright © 2011-2022 走看看