您的位置:首页 > 其它

读入文件数据,根据竖线分割,并存入对象。

2017-03-16 00:00 281 查看
摘要: 因为要做一个银联数据功能,步骤需要从ftp上下载文件,然后解析文件到java中,文件中字段是以竖线分割的所以要解析其中的字段,然后匹配对象中的字段相对应的存入。

1,架包 要用到的包

import java.io.BufferedReader;
import java.io.FileInputStream;
import java.io.InputStreamReader;

2.放上代码

public static void main(String[] args) throws Exception {

// 开一个io流 把文件读入,读取文件的路径与文件名,设置字符编码,字符编码防止乱码出现。
BufferedReader br = new BufferedReader(new InputStreamReader(
//9012-ACCT-20150708
//9012-CARD-20150708
//9012-CUSTR-20150708
//9012-EVENT-20150708
new FileInputStream(
"C:/Users/Mr_li/Desktop/sample/9012-ACCT-20150708"),
"GBK"));
String line = "";
String[] arrs = null;

// 查看有下一行没有

while ((line = br.readLine()) != null) {

System.out.println(line);
System.out.println("---------------------------------------------华丽的分割线----------------------------------------------");

// 根据竖线分割,把一行数据分割成字符串数组

arrs = line.split("\\|");

// 创建对象,在这里我提前重构了构造方法 把字符串数据转成了对象需要的各种类型数据,输出打印
Sbacctmain sbacctmain = new Sbacctmain("1122",arrs);
System.out.println(sbacctmain);
// Fccardinfo card = new Fccardinfo("4465", arrs);
// System.out.println(card);
// Custrinfo custr = new Custrinfo("7899", arrs);
// System.out.println(custr);
// Eventtradeserial eventtradeserial = new Eventtradeserial("3344", arrs);
// System.out.println(eventtradeserial);

System.out.println("---------------------------------------------华丽的分割线----------------------------------------------");

}

//关闭流

br.close();

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: