下面代码在解析URL是正确的。不知道能不能同样用于邮件解析
public static String decode( String org ) {
StringBuffer sb = new StringBuffer();
for( int i=0; i<org.length(); i++ ) {
char c = org.charAt(i);
switch ( c ) {
case '+':
sb.append(' ');
break;
case '%':
try {
sb.append( ( char )Integer.parseInt(
org.substring( i+1, i+3 ), 16) );
} catch ( NumberFormatException e) {
throw new IllegalArgumentException();
}
i += 2;
break;
default:
sb.append( c );
break;
}
}
String result = sb.toString();
try {
byte[] inputBytes = result.getBytes( "8859_1" );
result = new String( inputBytes, "MS936" );
} catch (UnsupportedEncodingException e) {
}
return result;
}
public static String decode( String org ) {
StringBuffer sb = new StringBuffer();
for( int i=0; i<org.length(); i++ ) {
char c = org.charAt(i);
switch ( c ) {
case '+':
sb.append(' ');
break;
case '%':
try {
sb.append( ( char )Integer.parseInt(
org.substring( i+1, i+3 ), 16) );
} catch ( NumberFormatException e) {
throw new IllegalArgumentException();
}
i += 2;
break;
default:
sb.append( c );
break;
}
}
String result = sb.toString();
try {
byte[] inputBytes = result.getBytes( "8859_1" );
result = new String( inputBytes, "MS936" );
} catch (UnsupportedEncodingException e) {
}
return result;
}
解决方案 »
免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货