in commons-email2-core/src/main/java/org/apache/commons/mail2/core/EmailUtils.java [96:114]
public static String encodeUrl(final String input) {
if (input == null) {
return null;
}
final StringBuilder builder = new StringBuilder();
for (final byte c : input.getBytes(StandardCharsets.US_ASCII)) {
final int b = Byte.toUnsignedInt(c);
if (SAFE_URL.get(b)) {
builder.append((char) b);
} else {
builder.append(ESCAPE_CHAR);
final char hex1 = Character.toUpperCase(Character.forDigit(b >> 4 & 0xF, RADIX));
final char hex2 = Character.toUpperCase(Character.forDigit(b & 0xF, RADIX));
builder.append(hex1);
builder.append(hex2);
}
}
return builder.toString();
}