java读取txt文件,如何过滤掉注释

来源:百度知道 编辑:UC知道 时间:2024/07/02 16:05:14
比如有一个some.txt文件,内容为:
# 这是注释行
这是注释行
# 这是注释行
~这也是注释行
这也是注释行
~这也是注释行
#这也是注释行
~这也是注释行
这里是正文 这里是正文 这里是正文 这里是正文 这里是正文 这里是正文 这里是正文 这里是正文 这里是正文 这里是正文 这里是正文 这里是正文 这里是正文 这里是正文 这里是正文 这里是正文 这里是正文 这里是正文 这里是正文 这里是正文 这里是正文 …………………………………………

读取出来后只有正文部分,注释行统统不要。
哪位达人指点一下,给个思路或源码。
不尽感激!
注释行前#和~分布是不规则的,就是最后一个注释行有~符号。
给个字符的some.txt
~Pfesofesfsefsf
#feofjslfejsf
#---------------------
~ergrh
fsedobe feowfsjao
fegoesdgs fef
~f4eo2gso8ef
#--------- ------- ------
[j[7r[te[t
j6retwerf
~a deof geopd bseep fwef
131 3456 6547 232 242 4234
423 4325 5464 124 432 5436
135 5322 7832 883 216 4236

数字的部分是需要东西,其余的过滤。
等待高手!
并不是所有行都有#和~的!!!

处理的重点就是如何判断和删除两行注释中间的不是以"#"或者"~"开头的注释行,草草写了段代码,对于楼主给的那段some.txt能够正常处理
import java.io.BufferedReader;
import java.io.File;
import java.io.FileReader;
import java.io.IOException;
import java.util.ArrayList;

public class DelectComments {
public static void main(String rags[]) {
File f = new File("D:\\Hello.txt");
BufferedReader br = null;
try {
br = new BufferedReader(new FileReader(f));
boolean flag1 = false;// #
boolean flag2 = false;// ~
String content = "";
// last output content
ArrayList<String> outputContents = new ArrayList<String>();
// the number of lines that between 2 comments lines start with "#" or "~"
int commentsLineNum = 0;
while ((content = br.readLine()) !