码迷,mamicode.com
首页 > 编程语言 > 详细

Java读取txt文件

时间:2014-07-06 08:02:45      阅读:223      评论:0      收藏:0      [点我收藏+]

标签:java

题:已知有个txt文件,在D:\menu.txt。
已知txt文件每行的格式均为
"AAAA_BBBB_..._CCCC","Y/N"
如果CCC为数字的话,该行数据过滤掉。
把过滤完的数据生成一个新的文件,或者打印出控制台。
例如
"TEST_ABC_12123","Y"
"TEST_BCD_DE_23242","N"
"TEST_BAD_DE","Y"
这三行数据就被过滤掉第一行跟第二行,保留第三行。

<span style="white-space:pre">	</span>@SuppressWarnings("resource")
	public static void getTxt(String filePath) {
		
		InputStreamReader inStreamReader=null;

		try {
			File file = new File(filePath);

			if (!file.isFile() || !file.exists()) {
				System.out.println("找不到指定文件!");
				return;
				
			} else {
				inStreamReader = new InputStreamReader(new FileInputStream(file));
				BufferedReader bufferedReader=new BufferedReader(inStreamReader);
				
				String lineTxt=null;
				int count = 0;
				while((lineTxt=bufferedReader.readLine())!=null){
					
					//截取
					int lineLength=lineTxt.length();
					String subLineTxt=lineTxt.substring(1, lineLength-5);
					
					//分离
					String[] subTxts=subLineTxt.split("_");
					int subTxtsLength=subTxts.length;
					
					//正则表达式判断最后一个是否为数字
					String lastTxt=subTxts[subTxtsLength-1];
					if(!lastTxt.matches("\\d*")){
						count++;
						System.out.println(lineTxt);
					}
				}
				System.out.println("总共有"+count);
				
			}
		} catch (FileNotFoundException e) {
			e.printStackTrace();
		} catch (IOException e) {
			e.printStackTrace();
		}finally{
			
			//关闭InputStream
			if(inStreamReader!=null){
				try {
					inStreamReader.close();
				} catch (IOException e) {
					e.printStackTrace();
				}
			}
		}
	}


Java读取txt文件,布布扣,bubuko.com

Java读取txt文件

标签:java

原文地址:http://blog.csdn.net/wintersweetsugar/article/details/37053567

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!