基準に基づいて特定の文字のみを 16 進数に変換する必要がある場合に、文字列を 16 進数に変換する理由がわからないという理由で、私の Java コード。以下のコードと出力を参照してください。
for (int n = 0; n < line.length(); ++n) {
char aChar = line.charAt(n);
if (Character.isLetter(aChar) || Character.isDigit(aChar)
|| aChar == '_' || aChar == '-' || aChar == '.'
|| aChar == '*') {
encoded += +aChar;
} else if (aChar == ' ') {
encoded += +'+';
} else {
String hexValue = Integer.toHexString(aChar);
encoded += '%' + hexValue;
}
}
System.out.println("The encoded string is: " + encoded);
System.out.println("Length in chars is: " + encoded.length());
出力:
URL エンコードするテキスト行を入力してください
aaddcc
読み取られる文字列は次のとおりです。
文字の長さ: 6
エンコードされた文字列は次のとおりです: 97971001009999
文字の長さ: 14
上記のコードはそれの肉です