私は安心してAPIをテストしています。文字列をエンコーディング形式に変換する方法
apiの予想結果フォーマットの1つは、"Store <b>"+StoreName+"</b> created successfully"
のようなものです。
実際の結果にはいくつかのエンコーディングがありますが、どのエンコーディングが使用されているのかわかりません。
例:店舗名は「abc&*()_-+=~/?'abc
で、私はStore <b>abc&*()_-+=~/?'abc</b> created successfully
として結果を期待していますが、私が予想比較するように、私の期待される結果をエンコードする方法Store \u003cb\u003eabc\u0026*()_-+\u003d~/?\u0027abc\u003c/b\u003e created successfully"
として来ています実際のところ
変換が1か所で行われるため、期待される結果のみを変換したい。
は、次のように私は解決策を持って、期待される結果に実際の結果を変換する:
org.apache.commons.lang3.StringEscapeUtils.unescapeJava("Store \u003cb\u003eabc\u0026*()_-+\u003d~/?\u0027abc\u003c/b\u003e created successfully")
結果がStore <b>abc&*()_-+=~/?'abc</b> created successfully
として来るだろうが、私はそのコードがになりますので、実際の結果に自分の予想される結果を変換したいです単一の場所。
あなたが得るものは、ユニコードと呼ばれます。同じ問題を抱えたhttp://stackoverflow.com/q/11145681/5207900を参照してください。 – Marteng
これは役に立ちます:http://stackoverflow.com/questions/15929686/how-to-decode-unicode-html-by-javascript – GhostCat
返信ありがとう、実際には完全な文字列はユニコードに変換されません。変換される。実際の結果 'Store \ u003cb \ u003eabc \ u0026 *()_- + \ u003d〜/?\ u0027abc \ u003c/b \ u003e successfully created"は、 'org.apache.commons.lang3.StringEscapeUtilsを使って通常に変換されます。 unescapeJava( "Asset \\ u003cb \\ u003eNNN \\ u0026 \\ u003d \\ u0027NN(ブルースター)\\ u003c/b \\ u003eは正常に作成されました") 'しかし、私は一般的なものにしたいと思っています。その方法だけを使って、実際のメッセージフォーマットに予想されるメッセージを変換したいのですが、どうすればよいか分かりません。 –