import java.io.UnsupportedEncodingException;
import org.apache.commons.codec.binary.StringUtils;
String sessionKey = "ABCDEFGHIJABCDEFGHIJABCDEFGHIJAB";
byte[] sessionKeyBytes = sessionKey.getBytes();
try {
System.out.printf("%sn", new String(sessionKeyBytes,"UTF-8"));
} catch (UnsupportedEncodingException e) {
// TODO 自動生成された catch ブロック
e.printStackTrace();
}
// 例外もみ消し版
System.out.printf("%sn", StringUtils.newStringUtf8(sessionKeyBytes));
実行結果は
ABCDEFGHIJABCDEFGHIJABCDEFGHIJAB ABCDEFGHIJABCDEFGHIJABCDEFGHIJAB
となる。
まとめると、Java標準だとStringでnewすればいいんだけど、文字コード指定時に、例外処理を追加しないといけない。
UTF-8は大抵あるから、いちいち例外処理するの面倒くさいよねってことで、例外をもみ消してくれているのが、StringUtils.newStringUtf8。
大抵StringUtils使った方が楽なので、StringUtilsを使いましょうというお話。
コメントを残す