0

我正在尝试将数据从 Excel 复制到 SQL 表。

我有使用 RAND 函数在 Excel 文件中生成的日期。我将它们作为输入中的字符串,并尝试使用 tConvertType 将它们转换为日期数据类型。

我在初始输入中将其数据类型设置为“字符串”,在 tConvertType 的输出和 tMSSqlOutput 中设置为“日期”。

我的工作有工作流程 Excel 输入 -> tConvertType -> tMap -> tMSSqlOutput。在运行作业时,我收到一条错误消息:java.text.ParseException: Unparseable date: "Tue Jul 17 00:00:00 EDT 1973"

我不确定问题出在哪里。如果有人可以帮助我,将不胜感激。

这是我的工作截图。 在此处输入图像描述

4

2 回答 2

2

我能够解析您给定的示例日期,请在 tMap 中使用以下函数作为您提交的日期。

System.out.println(TalendDate.parseDateLocale("EEE MMM dd HH:mm:ss zzz yyyy", 'Tue Jul 17 00:00:00 EDT 1973', "EN"));

功能是yourDateColumn!=null && !"".equalsIgnoreCase(yourDateColumn)? TalendDate.parseDateLocale("EEE MMM dd HH:mm:ss zzz yyyy", yourDateColumn, "EN") :null

于 2014-05-29T06:47:42.317 回答
0

@UmeshR:您的代码运行良好,但您也必须处理时区问题。例如,我来自印度,当我从 EDT 转换时间时,talend 将其转换为我当地的时区。看截图在此处输入图像描述

于 2014-11-03T12:09:03.057 回答