java代码怎么实现 excel导入的文本值转换成日期

 我来答
像人一样的柳树46
2015-09-23 · 超过32用户采纳过TA的回答
知道答主
回答量:66
采纳率:0%
帮助的人:39.6万
展开全部

读取excel文件中日期内容是通过poi获取的,代码如下:

HSSFWorkbook excbook = new HSSFWorkbook(ExcFile);
//获取第一个sheet页 HSSFSheet excSheet = excbook.getSheetAt(0);
//获取第一行
HSSFRow oneRow = excSheet.getRow(0);
//获取第一行的第一个表格  
HSSFCell oneCell = oneRow.getCell(0);   
 switch (oneCell.getCellType()) {

  case HSSFCell.CELL_TYPE_NUMERIC:

    SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");  

    if(HSSFDateUtil.isCellDateFormatted(oneCell)){ 

    String  str = sdf.format(HSSFDateUtil.getJavaDate(oneCell.getNumericCellValue())).toString();

    System.out.println(str); 
    }
   break;
 }

   

antsshadow
2012-09-13
知道答主
回答量:15
采纳率:0%
帮助的人:12.5万
展开全部
换一个读excel的jar包。Apache的那些个jar包,读excel时,时间字段之类的不太好使。
建议使用 jxl.Workbook,读出来就是yyyy/MM/dd格式。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
na1d38
2012-09-13 · TA获得超过6624个赞
知道大有可为答主
回答量:1944
采纳率:50%
帮助的人:670万
展开全部
用 java.text 包里的
SimpleDateFormat类 的parse方法 可以实现
更多追问追答
追问
麻烦能回答的具体点么,例如我在excel中录入的时间为2012-9-10,导入到java里就变成了41162,然后我想把41162再变成2012-9-10,怎么实现? 最好能写上代码,真的非常感谢!
追答
excel里的日期型统统加引号就可以 了,
不加的话没办法的
本回答被提问者和网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
dugudaxue
2012-09-13 · TA获得超过219个赞
知道小有建树答主
回答量:343
采纳率:37%
帮助的人:94.9万
展开全部
你的excel里面的字段不是日期类型么?
追问
是啊,但是导入后变成文本值了,我想在java代码里再把数值变成日期类型!
追答
poi还是jxl啊?其实excel的每一个元素都是一个对象,你设几个断点,看看是不是获取的方法错了
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式