1 package net.sf.gridarta.model.filter;
3 import org.jetbrains.annotations.NotNull;
21 public static void encodeString(@NotNull
final StringBuilder sb, @NotNull
final String
string) {
22 for (
final char ch :
string.toCharArray()) {
23 if (ch ==
'%' || ch ==
',' || ch ==
')' || ch ==
'=' || Character.isISOControl(ch)) {
24 sb.append(String.format(
"%%%04X", (
int) ch));
41 public static String
decodeString(@NotNull
final StringBuilder sb) {
42 final StringBuilder result =
new StringBuilder();
43 while (sb.length() > 0) {
44 final char ch = sb.charAt(0);
45 if (ch ==
',' || ch ==
')' || ch ==
'=') {
49 result.append((
char) Integer.parseInt(sb.substring(1, 5), 16));
56 return result.toString();