将字节对象转换为字符串支持ulmaut字符

时间:2017-05-25 11:29:47

标签: java string character-encoding byte mainframe

数据来自IBM大型机界面。需要将对象消息转换为String以进行进一步处理。

public EventBody processICMessage(final Object incomingMsg) throws Exception
{
String inMsg = "";

if (incomingMsg instanceof String)
{
 inMsg = (String) incomingMsg;
}
else
{
 byte[] incomingMsgArr = (byte[]) incomingMsg;
 inMsg = new String((byte[]) incomingMsg, "UTF-8");             
}
}

首先编码是Cp1047,它无法处理变音字符。提到数据包括德语变音字符,如ä,c̈,p̈等。为了支持变音字符,我们将编码改为UTF-8,这导致'imMsg'字符串中出现空白数据。因此,ArrayIndexOutOfBoundException将用于进一步的子串操作。

0 个答案:

没有答案