文字列 Mediæval%20Bæbes を取ります。Medi%E6val+B%E6bes Mediæval%20Bæbes として URL にエンコードできます。最初に、デコード時に正しい æ 文字を取得します。後者は私に � (置換文字) を与えます。おそらく同じURLで、Javaに両方の方法でデコードさせる方法がわかりません。java.net.URI と apache の URLCodec も試しました。
ありがとう
これら 2 つの文字列は 2 つの異なるエンコーディングにあるため、このパズルの解決策を見つけることはできません。UTF-8æ
は %C3%A6、%E6 は ISO-8859-1 です。このようにしか機能しません
String s1 = URLDecoder.decode("Medi%E6val+B%E6bes", "ISO-8859-1");
String s2 = URLDecoder.decode("Mediæval%20Bæbes", "UTF-8");
String s3 = URLDecoder.decode("Medi%C3%A6val%20B%C3%A6bes", "UTF-8");