① java导出excel时的日期和时间问题
提问虽然已经过去很长时间了,但是这个问题很普遍。我来补充一下,希望大家能看到吧、、
给导出时间格式的字段增加一个css样式:mso-number-format:'\@' 即可('\@'是格式化为文本方式)。
例:<td style="mso-number-format:'\@';"><%=myDateTime %></td>
② Java解析excel 处理日期格式 有 yyyymmdd yyyy-mm-dd yyyy.mm,dd yyyy mm dd 等要处理格式化让他们统一成
如果源文件中是Date类型,就是当java.util.Date接收
~~~~~~~~
③ java读取excel里面的时间格式是5月17日,但是读取出来以后打印的结果是41411
建议你把日期格式更换一下,比如你的日期是在A1,则在B1输入=text(a1,"m月d日"),然后再让java读取的单元格为B1即可
要么你也可以直接在日期处这样输入=TEXT(DATE(2013,5,17),"m月d日")
④ 为什么java导出excel 日期格式不显示时分秒
将excel日期单元格那一列设置为文本,然后日期格式化为string导出
或者 将日期单元格那一列的日期格式设置为yyyy-MM-dd HH:mm:ss
⑤ java读取excel时间格式出现数字怎么处理
在Excel中的日期格式,比如2009-12-24将其转化为数字格式时变成了40171,在用java处理的时候,读取的也将是40171。如果使用POI处理Excel中的日期类型的单元格时,如果仅仅是判断它是否为日期类型的话,最终会以NUMERIC类型来处理。
正确的处理方法是先判断单元格的类型是否则NUMERIC类型,然后再判断单元格是否为日期格式,如果是的话,创建一个日期格式,再将单元格的内容以这个日期格式显示出来。如果单元格不是日期格式,那么则直接得到NUMERIC的值就行了。
具体代码如下:
主要是判断NUMERIC 的时候 同事判断下 单元格是不是日期格式 如果是 日期格式直接 转成日期格式字符串返回值就ok了。
if(0==cell.getCellType()){ //判断是否为日期类型 if(HSSFDateUtil.isCellDateFormatted(cell)){ //用于转化为日期格式Dated=cell.getDateCellValue(); DateFormatformater=newSimpleDateFormat("yyyy-MM-ddHH:mm:ss"); str[k]=formater.format(d);}else{ //用于格式化数字,只保留数字的整数部分 DecimalFormatdf=newDecimalFormat("########"); str[k]=df.format(cell.getNumericCellValue()); }
⑥ java中从excel表格读入手写的格式为2013/2/14 11:12:31这样格式的时间格式不对
try {
Date dateCellValue = cell.getDateCellValue();
if (dateCellValue != null) {
data = KqDateUtil.getStrDate(dateCellValue, pattern);
}
} catch (Exception e2) {
}
pattern为你想要的时间格式
⑦ excel中日期格式是数字,想转成java的日期格式,遇到了问题
java读取excel时间格式出现数字的处理方法:
Excel存储日期、时间均以数值类型进行存储,读取时POI先判断是是否是数值类型,再进行判断转化
1、数值格式(CELL_TYPE_NUMERIC):
1.纯数值格式:getNumericCellValue() 直接获取数据
2.日期格式:处理yyyy-MM-dd, d/m/yyyy h:mm, HH:mm 等不含文字的日期格式
1).判断是否是日期格式:HSSFDateUtil.isCellDateFormatted(cell)
2).判断是日期或者时间
cell.getCellStyle().getDataFormat() == HSSFDataFormat.getBuiltinFormat("h:mm")
OR: cell.getCellStyle().getDataFormat() == HSSFDataFormat.getBuiltinFormat("yyyy-MM-dd")
3.自定义日期格式:处理yyyy年m月d日,h时mm分,yyyy年m月等含文字的日期格式
判断cell.getCellStyle().getDataFormat()值,解析数值格式
yyyy年m月d日----->31
m月d日---->58
h时mm分--->32
举例说明:
private String parseExcel(Cell cell) {
String result = new String();
⑧ java导出excel日期怎么格式化
Dated=cell.getDateCellValue();
DateFormatformater=newSimpleDateFormat("yyyy-MM-dd");
⑨ Java 出力Excel 文件,并向该文件中写固定格式的日期。我往文件里写的是yyyy-mm-dd
你写入的yyyy-mm-dd而显示yyyy/mm/dd这是正常的,表示EXCEL理解了你写入的数据是日期格式,显示的时候由于没有指定单元格的格式,所以系统以默认的yyyy/mm/dd格式显示,这个其实没关系。
如果你特别希望显示为yyyy-mm-dd格式,可以写入内容前增加一个单引号(半角英文),这样强制告诉EXCEL这是个文本,不要理解为日期。
还有一个办法,就是JAVA里面写入数据完毕,设置单元格的格式为yyyy-mm-dd,通过设置.NumberFormat 属性为 "yyyy-mm-dd"实现。
⑩ java导入excel时怎么处理日期格式
在Excel中的日期格式,比如2009-12-24将其转化为数字格式时变成了40171,在用java处理的时候,读取的也将是40171。
如果使用POI处理Excel中的日期类型的单元格时,如果仅仅是判断它是否为日期类型的话,最终会以NUMERIC类型来处理。正确的处理方法是先判断单元格的类型是否则NUMERIC类型,然后再判断单元格是否为日期格式,如果是的话,
创建一个日期格式,再将单元格的内容以这个日期格式显示出来。如果单元格不是日期格式,那么则直接得到NUMERIC的值就行了。具体代码如下:
if (0 == cell.getCellType()) {
//判断是否为日期类型
if(HSSFDateUtil.isCellDateFormatted(cell)){
//用于转化为日期格式
Date d = cell.getDateCellValue();
DateFormat formater = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
str[k] = formater.format(d);
}else{
// 用于格式化数字,只保留数字的整数部分
DecimalFormat df = new DecimalFormat("########");
str[k] = df.format(cell.getNumericCellValue());
}