如何使用Talend 3.6在tMap中导入和使用StringUtils

如何使用Talend 3.6在tMap中导入和使用StringUtils,talend,Talend,我知道该库提供了许多字符串函数,包括StringUtils.capitalize 在Talend OpenStudio 6.3中,我添加了tLibraryLoad,并在基本设置中选择了commons-lang3-3.4.jar,在高级设置中添加了import org.apache.commons.lang3.StringUtils.* 在我的tMap中,我将StringUtils.Capitalize(row20.Forename)分配给了一个变量,但是我得到了错误类型StringUtils的方

我知道该库提供了许多字符串函数,包括
StringUtils.capitalize

在Talend OpenStudio 6.3中,我添加了
tLibraryLoad
,并在基本设置中选择了
commons-lang3-3.4.jar
,在高级设置中添加了
import org.apache.commons.lang3.StringUtils.*

在我的tMap中,我将
StringUtils.Capitalize(row20.Forename)
分配给了一个变量,但是我得到了错误
类型StringUtils的方法Capitalize(String)未定义

在TalendExchange上有一个StringUtils可用,但它仅适用于6.2及更低版本


访问其他字符串处理工具(如
Capitalize
)的最佳和最可靠的方法是什么?它可以将MONKEY之类的字符串转换为MONKEY

我认为您应该试试我认为您应该试试talend似乎使用了自己的StringUtils库(例程.system),然后,当指定“StringUtils”时,Talend无法识别您的importn,仍然使用自己的类

StringUtils.Capitalize(row20.Forename)

在tMap中,尝试
org.apache.commons.lang3.StringUtils.capitalize(row20.Forename)
而不是似乎talend使用自己的StringUtils库(routines.system),然后在指定“StringUtils”时,talend不识别您的导入项,仍然使用自己的类


在tMap中,尝试
org.apache.commons.lang3.StringUtils.capitalize(row20.Forename)
而不是您可以使用StringHandling.UPCASE(row20.Forename)转换为大写。 在tMap中,单击“…”以填充输出字段。它打开了表达式生成器。在categories列中搜索“StringHandling”,然后单击UPCASE并完成TOS作为示例提出的表达式


您可以使用StringHandling.UPCASE(row20.Forename)转换为大写。 在tMap中,单击“…”以填充输出字段。它打开了表达式生成器。在categories列中搜索“StringHandling”,然后单击UPCASE并完成TOS作为示例提出的表达式


您的tLibraryload中的设置几乎正确,但您可以尝试按如下所示进行配置:

t库负载设置

Tmap

结果


您的tLibraryload中的设置几乎正确,但您可以尝试按如下所示进行配置:

t库负载设置

Tmap

结果


我看不出我的tMap和你的建议之间有什么区别。对不起,我会说StringUtils.capitalize(第20行名字)我看不出我的tMap和你的建议之间有什么区别。对不起,我会说StringUtils.capitalize(第20行名字)这确实停止了编译错误,但实际值不受函数调用的影响。这确实停止了编译错误,但实际值不受函数调用的影响。我不想转换为大写。我想在stringutils中使用talend不包括的函数,如将大写转换为正确的或标题大小写我不想转换成大写,我想使用talend不包含的stringutils中的函数,比如将大写转换成正确的或标题case欢迎使用。请确保您对答案提供更多信息和解释。你的答案有点含混不清。也要对链接进行适当的描述。欢迎使用SO。请确保您对答案提供更多信息和解释。你的答案有点含混不清。也要对链接进行适当的描述。