1. ホーム
  2. java

Java - 文字列を有効な URI オブジェクトに変換する

2023-11-20 22:10:42

質問

私は java.net.URI オブジェクトから String . この文字列にはいくつかの文字があり、それらは割合にエスケープシーケンスで置き換えられる必要があります。しかし、URLEncoder を使用して UTF-8 エンコーディングで文字列をエンコードすると、/ もそのエスケープ シーケンスに置き換えられます。

String オブジェクトから有効なエンコード URL を取得するにはどうすればよいですか?

http://www.google.com?q=a b 与える http%3A%2F%2www.google.com... という出力にしたいのですが http://www.google.com?q=a%20b

どなたか、これを実現する方法を教えていただけませんか。

私はこれをAndroidアプリで行おうとしています。そのため、私は限られた数のライブラリにアクセスすることができます。

どのように解決するのですか?

試してみるとよいでしょう。 org.apache.commons.httpclient.util.URIUtil.encodeQuery Apache コモンズ-httpclient プロジェクト

このように ( URIUtil ):

URIUtil.encodeQuery("http://www.google.com?q=a b")

になる。

http://www.google.com?q=a%20b

もちろん自分でやることもできますが、URIのパースはかなり面倒なことになります...。