日期:2014-05-18  浏览次数:20795 次

请教高手!按标题排序,对数据进行校验,然后批量添加
UserName|UserGroupID|Name|IDNumber|DepartmentID|EmployFrom|Phone|Mobile|Email|Address
zhangsan|2|张三|610112198711010530|1|2011-07-19|010-12345678|18210328281|zhangsan@sina.com|北京市东城区
lisi|2|李四|610112198811010530|2|2011-07-19|010-12345679|18210328282|lisi@sina.com|北京市东城区

员工信息文件的结构如下:
1. 员工信息文件为一纯文本文件(文件名后缀为“.txt”)
2. 文件的第一行为标题行,其余行为数据行
3. 标题行结构与规则:
1) 标题行中包括多个标题
2) 每个标题使用分隔符“|”分隔
3) 标题可忽略大小写
4) 员工信息中的每个属性名(见下表)必须在标题行中存在
4. 数据行结构与规则:
1) 每一条员工信息包括多个员工信息属性,
2) 每一属性使用分隔符“|”分隔
3) 每个属性的先后顺序由标题行决定
系统处理如下:
1. 打开员工信息文件,处理每一条员工信息
2. 解析每一员工信息属性,检查员工信息属性的合法性,检查规则见增加员工信息
3. 如果检查通过,增加或更新员工基本信息(Employee)、用户信息(User)、员工雇用信息(Employment)、员工联系方式(Contact)。详细业务规则见增加员工信息(不处理照片数据)
4. 如果检查未通过,将员工信息以及错误信息写到员工信息错误文件
5. 每一条员工信息为一个事务处理单元
处理结束后,返回“批量增加员工信息”输出页面,显示处理数据的:总条数,成功条数、失败条数、处理时间

这个功能块真心不会做啊!有没有高手指点一下具体的代码?
------解决方案--------------------
按行读取,一行行处理,有错报错,不亲自写一下,怎么知道自己哪里写不出呢
------解决方案--------------------
建一个employee类,类中对应员工属性,读取文件时第一行由于是title,只启注释作用,所以不作处理,第二行开始,对获取到的每一行分别用split("
------解决方案--------------------
"),分割成数组,分别判断并且按顺序赋值,怎么校验就看需求了,校验通过后将数据存放在该实体类中,然后每一行对应一个employee,可以存放在数据库,或者list中
------解决方案--------------------
4楼正解,把你读取的每行数据解析到一个数组就好了,用split这个分割函数