ここ数時間、次の文字列から摂氏記号を削除しようとしています。以前の投稿を見たところ、/u2103 がその Unicode 表現であることがわかりました。その糸を取り除こうとしても、まだ運がありません。これが私が今持っているものです:
String temp = "Technology=Li-poly;Temperature=23.0 <degree symbol>C;Voltage=3835";
StringBuilder filtered = new StringBuilder(temp.length());
for (int i = 0; i < temp.length(); i++) {
char test = temp.charAt(i);
if (test >= 0x20 && test <= 0x7e) {
filtered.append(test);
}
}
temp = filtered.toString();
temp.replaceAll(" ", "%20");
結果の文字列は次のようになります: Technology=Li-poly;Temperature= 23.0 C ;
私も試してみました
temp.replaceAll("\\u2103", "");
temp.replaceChar((char)0x2103, ' ');
しかし、これはどれも機能しません。
私の現在の問題は、文字列をフィルタリングする関数が空白スペースを残すことですが、replaceAll(" ", "%20") の呼び出しがその特定のスペースを認識していないようです。ReplaceAll は、他のスペースを %20 に置き換えます。