Java解析文件内容
本文主要实现对.chk文件的解析,将其内容读出来,存入到一个Map中,文件内容实例为:
A0500220140828.CHK
A05002 |34622511 |373532879 |3
识别分隔符|,代码如下所示:
package com.src.factory; import java.io.BufferedReader;
import java.io.File;
import java.io.FileReader;
import java.io.IOException;
import java.util.LinkedHashMap;
import java.util.Map; import org.apache.log4j.Logger; public class ChkFileParseFactroy { static Logger logger = Logger.getLogger(ChkFileParseFactroy.class); /**
* @Title: fileParsing
* @Description: TODO(这里用一句话描述这个方法的作用)
* @最后修改时间:Aug 14, 2014 11:02:26 AM
* @param fileReader
* @throws IOException 对方法的参数进行描述
* @return Map<String,String> 返回类型
*/
public Map<String, String> fileParsing(File file) { if(file == null ){
return null;
} Map<String, String> fileReadMap = new LinkedHashMap<String, String>();
String alineString = null;
BufferedReader bufferedReader = null;
FileReader fileReader = null;
try {
fileReader = new FileReader(file);
bufferedReader = new BufferedReader(fileReader);
alineString = bufferedReader.readLine(); //读取第一行数据
if (alineString != null) { //判断文件是否为空
String[] readArray = alineString.split("\\|"); //拆分读取的数据
if(readArray.length == 4){ //判断文件格式是否符合
fileReadMap.put("interNo", readArray[0]); //Map第一个键存放接口号
fileReadMap.put("totalNum", readArray[1]); //Map第二个键存放记录条数
fileReadMap.put("fileSize", readArray[2]); //Map第三个键存放文件大小
fileReadMap.put("fileNum", readArray[3]); //Map第四个键存放文件数
} else {
logger.error("Error of File Format!");
}
} else {
logger.error("The File is Empty!");
}
} catch (IOException e1) {
e1.printStackTrace();
} finally { try{
if(null != bufferedReader)
bufferedReader.close();
}catch(Exception e){
e.printStackTrace();
}
try{
if(null != fileReader)
fileReader.close();
}catch(Exception e){
e.printStackTrace();
}
}
return fileReadMap;
}
}
示例文件解析后显示为:
{interNo=A05002 , totalNum=34622511 , fileSize=373532879 , fileNum=3}
本文出自 “Forever Love” 博客,转载请务必保留此出处http://www.cnblogs.com/dwf07223/p/3999204.html。
Java解析文件内容的更多相关文章
- java swing文件内容检索工具
Java相关技术 - 文件内容检索工具 拿到一个几百M甚至上G的project让你去学习 有时候你会想知道某个关键词是在哪个文件里 比如:spring MVC配置的@RequestMapping,你从 ...
- java解析文件
遇到两个小坑: 1.使用String.split,部分分隔符需要转义:https://www.cnblogs.com/mingforyou/archive/2013/09/03/3299569.htm ...
- java读取文件内容常见几种方式
①随机读取文件内容 ②以行为单位读取文件,常用于读面向行的格式化文件 ③以字符为单位读取文件,常用于读文本,数字等类型的文件 ④以字节为单位读取文件,常用于读二进制文件,如图片.声音.影像等文件 pa ...
- java读取文件内容
获取文件内容 picurl = "http://www.baidu.com/data.txt"; URL urlfile = new URL(picurl); BufferedRe ...
- java修改文件内容
文件的读和写,大家都不陌生,但是修改呢?按照普通的读写流去修改的话,只能全部读取出来,在内存中修改好后,全部写进去,这样对于文件内容过多的时,性能很低. 最近在遇到这个问题的时候,发现RandomAc ...
- Java追加文件内容的三种方法
import java.io.BufferedWriter; import java.io.File; import java.io.FileOutputStream; import java.io. ...
- Springboot 上传excel并解析文件内容
最近在做一个物业的系统,需要通过excel上传业主的信息,解析并入库. 参考:https://www.cnblogs.com/jyyjava/p/8074322.html 话不多说,直接上核心代码 i ...
- java读取文件内容并输出到控制台,java中实现文件复制
public class TestFileInputStream { public static void main(String [] args) { //读取指定文件中内容,并在控制台输出 Fil ...
- java 实现文件内容的加密和解密
package com.umapp.test; import java.io.FileInputStream; import java.io.FileOutputStream; import java ...
随机推荐
- TabHost选项卡的实现(二):使用Fragment实现
在上一篇博客<TabHost选项卡的实现(一):使用TabActivity实现>中,讲解了如何使用TabActivity创建管理选项卡,但是,通过TabActivity创建选项卡的方式已经 ...
- Python--day62--使用Bootstrap样式的出版社
没有使用之前: 使用Bootstrap样式之后:
- servicemix 实例 -- 参考open source ESBs in action这本书
1. 项目结构 2. bean服务处理单元 1)Person类 package esb.chapter3; import java.io.StringWriter; import javax.xml. ...
- 2018-2-13-WPF-DelegateCommand-出现Specified-cast-is-not-valid
title author date CreateTime categories WPF DelegateCommand 出现Specified cast is not valid lindexi 20 ...
- java 创建线程方式
1.继承Thread类 子类覆写父类中的run方法,将线程运行的代码存放在run中. 建立子类对象的同时线程也被创建. 通过调用start方法开启线程. 2.实现Runnable接口 子类覆盖接口中的 ...
- [C++] 烦人的error LNK2019和error LNK2001
常见原因: 没有正确的设置引用的lib,新手常犯这个错误,这是最容易解决的问题. extern "C"的问题.如果C++写的dll要给C程序用,那么就要注意extern " ...
- vue2.x+elelmentUI@3.5 表格
<template> <section> <el-row> <el-col :span="16"> <!--表单--> ...
- Linux 内核usb_bulk_msg 接口
usb_bulk_msg 创建一个 USB 块 urb 并且发送它到特定的设备, 接着在返回到调用者之 前等待完成. 它定义为: int usb_bulk_msg(struct usb_device ...
- <Codeforce>1082A. Vasya and Book
题目描述: Vasya is reading a e-book. The file of the book consists of nn pages, numbered from 11 to nn. ...
- CDM命令实现MySql数据库文件的导出导入
1.首先进入MySQL的安装目录,找到Bin文件夹,我这里安装的目录是C:\Program Files\MySQL\MySQL Server 8.0\bin ,进入该文件夹后在空白处按下Shift键+ ...