2013-01-31 127 views
0

我正在处理一个平面文件,我得到的日期如类似于 - > 20121210和时间喜欢 - > 124040,我如何解析这个并插入数据库作为时间戳,我正在使用java和pl/sql?日期和时间分析

+0

检查'Si​​mpleDateFormatter'。 –

+0

我同时收到时间和日期 –

+0

您应该始终通过发布您的相关部分代码 –

回答

3
SimpleDateFormat format = new SimpleDateFormat("yyyyMMdd'T'HHmmSS"); 
String fromFileDateTime = "20121210"+"T"+"124040"; 
Date date = format.parse(fromFileDateTime); 

填充fromFileDateTime变量通过合并日期,您从平面文件中获得的时间字符串。

+1

但是日期字符串呢?在解析(dateString); –

+0

糟糕!现在更新。 – TheWhiteRabbit

+0

不知道该'T'部分,然后执行,然后决定是否保留它或去“yyyyMMddHHmmSS” – TheWhiteRabbit

2
public static void main(String[] args) throws ParseException, java.text.ParseException { 


    String date = "20121210 124040"; 
    DateFormat dateFormat = new SimpleDateFormat(
      "yyyyMMd HHmmss"); 

    Date formattedDate = dateFormat.parse(date); 
    System.out.println(formattedDate); 

} 

输出:

Mon Dec 10 12:40:40 IST 2012 
2

假设你得到的日期和时间字符串。所以,您需要parse方法SimpleDateFormatter。在API中探索更多模式。

从API引用:

SimpleDateFormat是一个用于格式化和语言环境敏感的方式分析日期 的具体类。它允许格式化(日期 - >文本), 解析(文本 - >日期)和规范化。

public static void main(String[] args) { 
     SimpleDateFormat sdf = new SimpleDateFormat("yyyyMMdd HHmmSS"); 
     try{ 
      String dateString = "20121210"+" " + "124040"; 
      Date date = sdf.parse(dateString); 
      System.out.println("Formatted Date: " + date); 
     }catch(Exception e) { 
      e.printStackTrace(); 
     } 

    } 

输出:

run: 
Formatted Date: Mon Dec 10 12:40:00 IST 2012