可能很多开发者会面对客户这样的需求,在未使用系统之前,他们很多数据都是保存在Word或者Excel等一些电子表格中,现在他们需要将原来的数据自动导入到系统中去,而不是一条一条地手工录入。我就碰到了这样的需求,经过一番折腾之后,终于实现了,我是采用第三方控件JXL实现的,原理是比较简单的。下面是详细的代码:
try
{
//实例化一个工作簿对象
Workbook workBook=Workbook.getWorkbook(new File("F:\\qzlx.xls"));
//获取该工作表中的第一个工作表
Sheet sheet=workBook.getSheet(0);
//获取该工作表的行数,以供下面循环使用
int rowSize=sheet.getRows();
for(int i=0;i<rowSize;i++)
{
//编号
String id=sheet.getCell(0,i).getContents();
//转来单位及文号
String turn_unit=sheet.getCell(1,i).getContents();
//来信人姓名
String reg_name=sheet.getCell(2,i).getContents();
//来信人单位或住址
String reg_unit=sheet.getCell(3,i).getContents();
//来信内容
String reg_content=sheet.getCell(4,i).getContents();
//来信日期
Date reg_time = java.sql.Date.valueOf(sheet.getCell(5,i).getContents());
//信访事项发生地或单位
String reg_eventUnit=sheet.getCell(6,i).getContents();
//处理情况
String do_case=sheet.getCell(7,i).getContents();
//处理日期
Date do_time=java.sql.Date.valueOf(sheet.getCell(8,i).getContents());
//问题归类
String problem_type=sheet.getCell(9,i).getContents();
//问题所属系统
String problem_system=sheet.getCell(10,i).getContents();
//督办时间及文号
String wenhao=sheet.getCell(11,i).getContents();
//经办人
String processor=sheet.getCell(12,i).getContents();
//备注
String remark=sheet.getCell(13,i).getContents();
LcTOldRegServiceImpl regService=new LcTOldRegServiceImpl();
LctOldReg reg=new LctOldReg(id,turn_unit,reg_name,reg_unit,reg_time,do_time,wenhao,problem_system,problem_type,reg_eventUnit,remark,reg_content,processor,do_case);
//执
2. Calendar 对象的容错性,Lenient 设置 我们知道特定的月份有不同的日期,当一个用户给出错误的日期时,Calendar 如何处理的呢? import java.io.*;
import java.util.*; public class WhatIsCalendar
{
public static void main(String[] args) throws Exception{
......