先解释一下什么是自动按位切割字符串 ,例如: c1(10) type c value '123,,你好'. c2(9) type c .
将 c2 = c1 .此时由于c1中最后一字符是中文占两个字节,那么c2中得到的数据将会是 c2 = '123,,你> ' <-----------出现了乱码。
为了解决这个问题,我写了一个函数如果最后一位是两个字节而被赋值得变量是只剩一个字节空间时,放弃最后一个字符。
例如:
CALL FUNCTION 'YGET_TEXT_SPLIT'
EXPORTING
input = c1
IMPORTING
output = c2.
调用后c2的值为:c2 = '123,,你' <-----------不会出现了乱码
函数代码如下:
FUNCTION yget_text_split.
*"------------------------------------