[学习笔记]解析Excel
来源:互联网 发布:windows怎么解压缩文件 编辑:程序博客网 时间:2024/06/08 14:11
public List<BpmRlzy_StaffingDetail> saveScalleDetail(String path,long scallId){
BpmConfigure bpmconfig=BpmConfiguration.getInstance().getConfig();
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
String fullpath=bpmconfig.getRuntimeDocRoot()+path;
InputStream is = new FileInputStream(fullpath);
HSSFWorkbook hssfWorkbook = new HSSFWorkbook(is);
BpmRlzy_StaffingDetail scalldetail=null;
List<BpmRlzy_StaffingDetail> list=new ArrayList<BpmRlzy_StaffingDetail>();
// 循环工作表Sheet
for (int numSheet = 0; numSheet < hssfWorkbook.getNumberOfSheets(); numSheet++) {
HSSFSheet hssfSheet = hssfWorkbook.getSheetAt(numSheet);
if (hssfSheet == null) {
continue;
}
// 循环行Row
for (int rowNum = 1; rowNum <= hssfSheet.getLastRowNum(); rowNum++) {
HSSFRow hssfRow = hssfSheet.getRow(rowNum);
if (hssfRow == null) {
continue;
}
scalldetail=new BpmRlzy_StaffingDetail();
// 循环列Cell
HSSFCell depName = hssfRow.getCell(0);
if (depName == null) {
continue;
}
//判断部门是否存在 查找部门
String orgName=depName.getStringCellValue()!=null?depName.getStringCellValue():"";
SysOrganization dep=findSysOrganization(orgName);
if(dep==null){
return null;
}
scalldetail.setDepName(dep.getOrgName());
HSSFCell TheRotation = hssfRow.getCell(1);
if (TheRotation == null) {
continue;
}
scalldetail.setPosition(String.valueOf(TheRotation)!=""?String.valueOf(TheRotation):"");
HSSFCell Name = hssfRow.getCell(2);
if (Name == null) {
continue;
}
scalldetail.setLevel(Name.getStringCellValue()!=""?Name.getStringCellValue():"");
HSSFCell IDCard = hssfRow.getCell(3);
if (IDCard == null) {
continue;
}
String organization="0";
if(IDCard.CELL_TYPE_NUMERIC==0){
IDCard.setCellType(Cell.CELL_TYPE_STRING);
organization=IDCard.getStringCellValue();
}
scalldetail.setOrganization(organization);
HSSFCell Position = hssfRow.getCell(4);
if (Position == null) {
continue;
}
String shiyou="0";
if(Position.CELL_TYPE_NUMERIC==0){
Position.setCellType(Cell.CELL_TYPE_STRING);
shiyou=Position.getStringCellValue();
}
scalldetail.setShiYou(shiyou);
HSSFCell ClasseCount = hssfRow.getCell(5);
if (ClasseCount == null) {
continue;
}
scalldetail.setClasseCount(String.valueOf(ClasseCount)!=""?String.valueOf(ClasseCount):"");
HSSFCell WorkingHours = hssfRow.getCell(6);
if (WorkingHours == null) {
continue;
}
scalldetail.setWorkingHours(String.valueOf(WorkingHours)!=""?String.valueOf(WorkingHours):"");
HSSFCell JobStatus = hssfRow.getCell(7);
if (JobStatus == null) {
continue;
}
scalldetail.setJobStatus(String.valueOf(JobStatus)!=""?String.valueOf(JobStatus):"");
HSSFCell OffSituation = hssfRow.getCell(8);
if (OffSituation == null) {
continue;
}
scalldetail.setOffSituation(String.valueOf(OffSituation)!=""?String.valueOf(OffSituation):"");
HSSFCell Remark = hssfRow.getCell(9);
scalldetail.setRemark(Remark!=null?String.valueOf(Remark):"");
scalldetail.setBpmRlzy_StaffingID(scallId);
list.add(scalldetail);
}
}
return list;
}
BpmConfigure bpmconfig=BpmConfiguration.getInstance().getConfig();
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
String fullpath=bpmconfig.getRuntimeDocRoot()+path;
InputStream is = new FileInputStream(fullpath);
HSSFWorkbook hssfWorkbook = new HSSFWorkbook(is);
BpmRlzy_StaffingDetail scalldetail=null;
List<BpmRlzy_StaffingDetail> list=new ArrayList<BpmRlzy_StaffingDetail>();
// 循环工作表Sheet
for (int numSheet = 0; numSheet < hssfWorkbook.getNumberOfSheets(); numSheet++) {
HSSFSheet hssfSheet = hssfWorkbook.getSheetAt(numSheet);
if (hssfSheet == null) {
continue;
}
// 循环行Row
for (int rowNum = 1; rowNum <= hssfSheet.getLastRowNum(); rowNum++) {
HSSFRow hssfRow = hssfSheet.getRow(rowNum);
if (hssfRow == null) {
continue;
}
scalldetail=new BpmRlzy_StaffingDetail();
// 循环列Cell
HSSFCell depName = hssfRow.getCell(0);
if (depName == null) {
continue;
}
//判断部门是否存在 查找部门
String orgName=depName.getStringCellValue()!=null?depName.getStringCellValue():"";
SysOrganization dep=findSysOrganization(orgName);
if(dep==null){
return null;
}
scalldetail.setDepName(dep.getOrgName());
HSSFCell TheRotation = hssfRow.getCell(1);
if (TheRotation == null) {
continue;
}
scalldetail.setPosition(String.valueOf(TheRotation)!=""?String.valueOf(TheRotation):"");
HSSFCell Name = hssfRow.getCell(2);
if (Name == null) {
continue;
}
scalldetail.setLevel(Name.getStringCellValue()!=""?Name.getStringCellValue():"");
HSSFCell IDCard = hssfRow.getCell(3);
if (IDCard == null) {
continue;
}
String organization="0";
if(IDCard.CELL_TYPE_NUMERIC==0){
IDCard.setCellType(Cell.CELL_TYPE_STRING);
organization=IDCard.getStringCellValue();
}
scalldetail.setOrganization(organization);
HSSFCell Position = hssfRow.getCell(4);
if (Position == null) {
continue;
}
String shiyou="0";
if(Position.CELL_TYPE_NUMERIC==0){
Position.setCellType(Cell.CELL_TYPE_STRING);
shiyou=Position.getStringCellValue();
}
scalldetail.setShiYou(shiyou);
HSSFCell ClasseCount = hssfRow.getCell(5);
if (ClasseCount == null) {
continue;
}
scalldetail.setClasseCount(String.valueOf(ClasseCount)!=""?String.valueOf(ClasseCount):"");
HSSFCell WorkingHours = hssfRow.getCell(6);
if (WorkingHours == null) {
continue;
}
scalldetail.setWorkingHours(String.valueOf(WorkingHours)!=""?String.valueOf(WorkingHours):"");
HSSFCell JobStatus = hssfRow.getCell(7);
if (JobStatus == null) {
continue;
}
scalldetail.setJobStatus(String.valueOf(JobStatus)!=""?String.valueOf(JobStatus):"");
HSSFCell OffSituation = hssfRow.getCell(8);
if (OffSituation == null) {
continue;
}
scalldetail.setOffSituation(String.valueOf(OffSituation)!=""?String.valueOf(OffSituation):"");
HSSFCell Remark = hssfRow.getCell(9);
scalldetail.setRemark(Remark!=null?String.valueOf(Remark):"");
scalldetail.setBpmRlzy_StaffingID(scallId);
list.add(scalldetail);
}
}
return list;
}
0 0
- [学习笔记]解析Excel
- POI学习笔记,Excel解析实现
- iMOOC学习笔记:Java的Excel读写操作入门实践-利用JXL解析Excel文件(二)
- iMOOC学习笔记:Java的Excel读写操作入门实践-利用POI解析Excel文件(二)
- Java+Excel学习笔记
- Excel 学习笔记一
- Excel Server 学习笔记
- EXCEL 学习笔记
- EXCEL学习笔记
- Excel VBA 学习笔记
- Excel 学习笔记
- Excel学习笔记
- EXCEL VBA学习笔记
- (个人笔记) java poi 解析excel
- TinyXML学习笔记:解析
- 学习笔记-解析XML
- xml解析学习笔记
- EXCEL学习笔记(1)
- [学习笔记]Sqlserver 获取当前天数
- 支付宝SDK的应用
- GDI编程小结
- 面试经验
- Android -- NineOldAndroids animation 封装
- [学习笔记]解析Excel
- GDI+编程小结
- [CDQ分治] BZOJ 2244 [SDOI2011]拦截导弹
- [学习笔记]Excelsql语句
- 如何封装RESTful Web Service
- 你是这样获取人工智能AI前沿信息的吗?
- [学习笔记]复选框变单选功能
- [学习笔记]Java报表合并行
- 有序链表的归并