我把文件一行一行地存入到了动态数组 list中,然后删除list里面的注释和输出语句。其中countNote是算注释个数的,charInNote是算注释的总字符数的。可是最后得到的list存在很多问题,有大佬能帮我改一下代码吗

这是测试文件String.java

注释总个数应该有156个

注释总的字符数应该有 88469个

public void operateNote(ArrayList list) throws Exception{

String s = null;

for(int j=0;j

s=list.get(j);

int note1=s.indexOf("/*");

int note2=s.indexOf("//");

int note3=s.indexOf("*/");

//int note4=s.indexOf("\"");

String dm="\"(.*)\"";//双引号

String sm="\'(.*)\'";//单引号

if(note1!=-1&&note3==-1) {//多行注释

countNote++;

String ttt=list.get(j);

list.set(j, ttt.substring(0, note1));

charInNote+=s.substring(note1).length()+1;//+1是包括换行符

s=list.get(++j);

while((note3=s.indexOf("*/"))==-1) {

if((note2=s.indexOf("//"))!=-1) {

countNote++;

}

list.remove(j);

charInNote+=s.length()+1;

if(j

s=list.get(++j);

}else {

break;

}

}

list.remove(j);

charInNote+=s.length();

}else if(note2!=-1) {// "//"类的单行注释

countNote++;

list.set(j, s.substring(0,note2));

charInNote+=s.substring(note2).length()+1;

}else if(note1!=-1&&note3!=-1) {//单行注释

countNote++;

String m1=s.substring(0, note1);

String m2=s.substring(note3+2);

String m3=m1+m2;

charInNote+=s.substring(note1, note3+2).length();

list.set(j, m3);

}else {//删除输出语句

String rp=list.get(j);

rp=rp.replaceAll(dm, "");

list.set(j, rp);

}

}

}

java统计文件字符数量_Java统计文件注释个数和注释字符数相关推荐

  1. java图片上传下载_java web 文件上传与下载

    组件工作流程:WEB服务器request ServletFil eupLoad DiskFileItem Factory代表普通字段的FileItem代表上传文件1FileItem代表上传文件2Fil ...

  2. java 文件转换字符串_java字符串文件互相转换

    Java字符串与文件的互转 Java中有时候需要读取一个文本类的文件,将其转换为字符串,然后做进一步处理.Java中没有现成的API方法,自己手动实现一个,大家来分享. 一.字符串转换为文件 /** ...

  3. java 数据写入txt乱码_java写入文件是乱码

    java写入文件是乱码 我们读取.写入文件流时,经常会遇到乱码的现象,造成乱码的原因当然不可能是一个,这里主要介绍因为文件编码格式而导致的乱码的问题.首先,明确一点,文本文件与二进制文件的概念与差异. ...

  4. java创建文件夹代码_Java创建文件夹及文件实例代码

    package com.xhkj.util; import java.io.File; import java.io.IOException; public class CreateFileUtil ...

  5. java 文件随机读取_Java 实现文件随机读写-RandomAccessFile

    现有如下的一个需求,向已存在1G数据的txt文本里末尾追加一行文字,内容如下"Lucene是一款非常优秀的全文检索库".可能大多数朋友会觉得这个需求很easy,说实话,确实easy ...

  6. java遍历文件和归类_java读取文件的两种方法:java.io和java.lang.ClassLoader

    java读取文件的两种方法:java.io和java.lang.ClassLoader 什么时候使用java.io,什么时候使用java.lang.ClassLoader呢? (注:要是之前读xml文 ...

  7. java web 上传附件_JAVA WEB文件上传步骤

    JAVA WEB文件上传步骤如下: 实现 Web 开发中的文件上传功能,两个操作:在 Web 页面添加上传输入项,在 Servlet 中读取上传文件的数据并保存在本地硬盘中. 1.Web 端上传文件. ...

  8. java压缩zip文件夹错误_Java将文件或者文件夹压缩成zip(修复文件夹中存在多个文件报Stream Closed错误问题)...

    项目场景: Java将文件或者文件夹压缩成zip(修复文件夹中存在多个文件报Stream Closed错误问题) 问题描述: 最近的项目需要将多级文件夹压缩成zip,网上找了几个工具类,都会报错,所以 ...

  9. java图片上传下载_java实现文件的上传和下载

    1. servlet 如何实现文件的上传和下载? 1.1上传文件 参考自:http://blog.csdn.net/hzc543806053/article/details/7524491 通过前台选 ...

最新文章

  1. 浅析SQL Server数据修复命令DBCC的使用
  2. 高校10余位博士抱着孩子参加授位仪式萌翻全场!科研人抱娃毕业成趋势?
  3. LINQ系列:Linq to Object分区操作符
  4. 99用c语言怎么写出来的,c语言的书写格式是什么
  5. HTML5移动端拖动惯性
  6. List集合多线程并发条件下不安全,如何解决?
  7. 运动目标跟踪(十)--CSK跟踪
  8. 苹果基带芯片“分家” 一箭多雕
  9. idea最近svn提交很慢 idea中svn提交时performing vcs refresh时间很长
  10. layui离线文档2.2.5
  11. Linux应急响应入侵排查思路
  12. 百度任玉刚写的对学习Android的理解
  13. 如何自定义MATLAB神经网络激活函数
  14. 【2022 谷歌开发者大会】名额有限,快来,带你体验谷歌的工程师文化
  15. Dota2 无法连接至steam网络 【已解决】
  16. 机器学习的6个核心算法
  17. Prim算法求图的最小生成树(Java)
  18. office软件合集
  19. 网络基础设施的相对落后对于信息化社会的快速发展的影响
  20. 神奇女侠Wonder Woman迅雷下载

热门文章

  1. AX2012 referencegroup
  2. 学计算机的,怎么知道自己喜欢软件还是硬件
  3. 你用好了没?K8 CPU使用指南
  4. java 反射 类名_java – 从反射中获取字段的类名
  5. C语言编程蛟龙转身,[蓝桥杯][2014年第五届真题]排列序数-题解(C语言代码)
  6. java+输出流++空值_一文搞定Java的输入输出流等常见流
  7. 信息学奥赛一本通 1203:扩号匹配问题 | OpenJudge 2.2 2705:扩号匹配问题
  8. 信息学奥赛一本通 2005:【20CSPJ普及组】直播获奖 | 洛谷 P7072 [CSP-J2020] 直播获奖
  9. 信息学奥赛一本通(1197:山区建小学)
  10. 钓鱼(信息学奥赛一本通-T1431)