使用独立的Talend作业时,输出文件未使用UTF-8编码

时间:2019-08-12 14:11:51

标签: utf-8 talend

我有一个简单的Talend作业,该作业读取CSV文件作为条目,将SOAP请求发送到Web服务,然后在CSV文件中返回响应的某些字段作为输出。该工作涉及整个欧洲的地址,因此输出的各个字段中都可以带有重音符号或非拉丁字符(例如白俄罗斯的地址)。

当我在Talend Open Studio中运行作业时,我的输出文件已正确以UTF-8编码,而在Notepad ++中打开文件时,所有特殊字符都可以正常显示。但是,当我将作业作为独立导出(使用“生成作业”菜单选项)并运行.bat文件时,没有正确编码任何特殊字符。当我在Notepad ++中打开文件时,它清楚地表明它是用UTF-8编码的,但是最终结果仍然是错误的。

我错过了什么,还是做错了什么?除了在tFileOutputDelimited组件的高级选项中选择“ UTF-8”作为编码外,我在Talend中没有找到任何选项。

预先感谢您的帮助

1 个答案:

答案 0 :(得分:1)

-Dfile.encoding=UTF-8作为参数传递给JVM应该可以解决此问题。
为了在Talend中进行设置,您可以使用“运行”视图中的“高级设置”选项卡,并添加JVM参数:-Dfile.encoding=UTF-8

您也可以在Talend首选项中进行全局设置:Windows>首选项> Talend>运行/调试