java - 如何将字符串转换为编码格式

标签 java rest-assured

我正在使用rest-assured来测试api。

API 预期结果格式之一类似于 "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" 的形式出现的

如何对我的预期结果进行编码,以便我将预期结果与实际结果进行比较。

我只想转换预期结果,因为转换将在单个位置进行。

要将实际结果转换为预期结果,我有如下解决方案:

org.apache.commons.lang3.StringEscapeUtils.unescapeJava("Store \u003cb\u003eabc\u0026*()_-+\u003d~/?\u0027abc\u003c/b\u003e created successfully")

结果将以Store <b>abc&*()_-+=~/?'abc</b> created successfully形式出现

但我想将预期结果转换为实际结果,以便代码位于单个位置。

最佳答案

实际上,我编写了一个包含一些实用程序的开源库。其中之一是将 Unicode 序列转换为字符串,反之亦然。我发现它非常有用。以下是关于该库有关 Unicode 转换器的文章的引用:

Class StringUnicodeEncoderDecoder has methods that can convert a String (in any language) into a sequence of Unicode characters and vise-versa. For example a String "Hello World" will be converted into

"\u0048\u0065\u006c\u006c\u006f\u0020 \u0057\u006f\u0072\u006c\u0064"

and may be restored back.

这里是整篇文章的链接,解释了库有哪些实用程序以及如何让库使用它。它可以作为 Maven 工件或来自 Github 的源代码提供。这是非常容易使用。 Open Source Java library with stack trace filtering, Silent String parsing Unicode converter and Version comparison

关于java - 如何将字符串转换为编码格式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44111344/

相关文章:

java - Qt:如何突出显示 QListWidget 中的重复项目? (qtjambi)

java - 尝试替换带有括号的字符串内的内容,java

java - REST 确保查询参数的多个值不起作用

java - 使用Java解析XML转换为Json

java - 将 Rest Assured Response 从文本/事件流转换为 Json 以进行模式验证

java - 安卓工作室;任务 ':baseGameUtils:compileReleaseJava' 执行失败

java - 如何在cardlayout中显示其他类的面板?

java - JAVA 2D 列表中的循环

java - 使用文件名中包含西里尔字符的多部分文件进行放心的 POST 调用

java - Hamcrest.Matchers : JSON Nested Array