从CSV读取字符串并解析为日期

时间:2014-10-16 09:59:31

标签: java string parsing date csv

我正在读取csv文件并按如下方式存储字符串:

                date=st.nextToken();

日期格式为2014-09-17T12:06:00.0000000Z,因此我定义:

 SimpleDateFormat formatter= new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ss.SSSSSSSX");

当我尝试解析时,

                current_date=formatter.parse(date);

我得到一个例外:

java.text.ParseException: Unparseable date: "Date"

有什么想法吗?

2 个答案:

答案 0 :(得分:1)

对我来说,以下工作:

public static void main(String[] args) throws ParseException {
    SimpleDateFormat formatter = new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ss.SSSSSSSX");

    System.out.println(formatter.parse("2014-09-17T12:06:00.0000000Z"));
}

所以我猜问题出在其他地方。你收到的数据是不是你想象的那样,或者某处有拼写错误?

尝试在解析之前打印所有日期,以便了解实际解析的内容。

答案 1 :(得分:0)

你可以试试这个

Date date = DatatypeFactory.newInstance().newXMLGregorianCalendar(str).toGregorianCalendar().getTime();