I was trying to decode string which in FARSI to UTF-8 but then i checked browser itself convert FARSI string into Decimal NCRs Code
How i can convert Decimal NCRs Code into UTF-8 ??
String farMsg = "عتباري";
String finalMsg = new String(farMsg.getBytes(),"UTF-8");
System.out.println("\n Farsi Message \n" + finalMsg);
when i am trying convert using above code it is working fine
but if i am using same string from an input box of JSP page its is giving me some output like this
عتباري
What modification do I need to do for converting into same.
EDIT
I entered عتباري in the jsp input box and in used request.getParameter("faMSg") to get the value and here i got عتباري but i should get عتباري
解决方案
I created a custom function which converts DecimalNCR to String.
public static String ConvertDecimalNCRToString(String hex)
{
String myString = hex.replace("", "");
String[] split = myString.split(";");
StringBuilder sb = new StringBuilder();
for (int i = 0; i < split.length; i++)
{
sb.append((char)Integer.parseInt(split[i]));
}
return sb.toString();
}
This converts successfully your supplied String.
EDIT I tested the above function with Chinese 游鍚堃,你好你怎么样 and Farsi (عتباري , and مرحبا كيف حالك) character it provided correct results.