やりたいこと Java で、日本語を含む URL を ASCII だけの URL に変換したい場合がある。 例えば、RSS などを読み込んだら RSS に記載された URL が日本語を含んでいたなんてことが良くある。 その 日本語を含む URL に対して単純に URL エンコードをかましてしまうと、コロン(:)やスラッシュなどの URL として正しい記号までエンコードしてしまう。 解決方法 java.net パッケージの URI クラスと、そのクラスのメソッド toASCIIString() を使うと解決できる。 toASCIIString() メソッドで ASCII 文字だけの文字列を返却してくれる。 String url = "http://hogemoge.com/あいうえお/"; url = new URI(url).toASCIIString(); 気合いを入れて自分で変換メソッ
![Javaで日本語を含むURLをASCIIだけのURLに変換する方法 |](https://cdn-ak-scissors.b.st-hatena.com/image/square/5da26cf4aea718dea6783e26759a5f0ce402fe03/height=288;version=1;width=512/https%3A%2F%2Fweblabo.oscasierra.net%2Fwp-content%2Fuploads%2F2013%2F12%2Feyecatch-java.png)