FME中中文字符长度问题

原文发布时间:2013-11-14

作者:一辉

很多国外的软件对中文的支持一直是一个很头疼的问题,前几天在用Python的过程中就曾遇到头疼很久了很久字符转换的问题,当然本文想要跟大家探讨的是FME中中文字符长度的问题。

问题:FME本身在大多数情况下对中文字符支持还是比较理想,但对于中文字符长度计算确和英文字母难以区分,中文本来是占据两个字符长度,是英文字符长度的2倍,但在FME的很多转换器中都没能计算出该区别,如常见的StringLengthCalculator和StringFormatter等,这样计算的长度如果字段值包含中文的话那么结果就是错误的。做一个简单的测试:

  测试模板图
  测试结果图

模板是对col_2字段进行长度计算,测试结果是分别两条记录的长度计算结果,图中很明显可以看出“数据项名称”和“sjxmc”所计算的长度_length均为5,这显然是错误的,当然在中英文字符都包含的情况下结果也是错的。

解决办法:这是前几天在一个项目遇到的问题,纠结不少时间最后是使用的python中len(字段名)的方法来计算的长度,这样便可区分出中英文所占长度的区别。

猜你喜欢

转载自blog.csdn.net/fmechina/article/details/81179618
今日推荐