我正在尝试将数据从Excel复制到SQL表。
我使用RAND函数在Excel文件中生成日期。我将它们作为输入中的字符串并尝试使用tConvertType在日期数据类型中进行转换。
我在初始输入中将其数据类型设置为'string',在tConvertType的输出和tMSSqlOutput中设置为'date'。
我的工作有Excel输入工作流程 - > tConvertType - > tMap - > tMSSqlOutput。 在运行作业时,我收到一条错误消息: java.text.ParseException:Unparseable date:“Tue Jul 17 00:00:00 EDT 1973”
我不确定问题出在哪里。 如果有人能帮助我,我将不胜感激。
这是我工作的截图。
答案 0 :(得分: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
答案 1 :(得分:0)
@UmeshR:你的代码工作正常,但你必须处理时区的事情。例如我来自印度,当我从EDT转换时间后,将其转换为我当地的时区。看屏幕截图。