【问题标题】:How to convert the String to encoding format [duplicate]如何将字符串转换为编码格式[重复]
【发布时间】:2017-10-22 00:31:02
【问题描述】:

我正在使用放心测试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。请参阅遇到同样问题的stackoverflow.com/q/11145681/5207900
  • 感谢回复,其实完整的字符串并没有转换成unicode,只有几个字符被转换了。实际结果Store \u003cb\u003eabc\u0026*()_-+\u003d~/?\u0027abc\u003c/b\u003e created successfully" 使用org.apache.commons.lang3.StringEscapeUtils.unescapeJava("Asset \\u003cb\\u003eNNN\\u0026\\u003d\\u0027NN(Blue Star)\\u003c/b\\u003e was successfully created") 转换为正常结果,但我想做的是通用的,预期结果将仅使用该方法得到,所以我想将预期消息转换为实际消息格式。但我不知道该怎么做

标签: java rest-assured


【解决方案1】:

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

StringUnicodeEncoderDecoder 类具有可以将 将字符串(任何语言)转换为 Unicode 字符序列和 反之亦然。例如字符串“Hello World”将被转换为

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

并且可以恢复。

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

【讨论】:

  • 感谢回复,其实完整的字符串并没有转换成unicode,只有几个字符被转换。实际结果Store \u003cb\u003eabc\u0026*()_-+\u003d~/?\u0027abc\u003c/b\u003e created successfully" 使用org.apache.commons.lang3.StringEscapeUtils.unescapeJava("Asset \\u003cb\\u003eNNN\\u0026\\u003d\\u0027NN(Blue Star)\\u003c/b\\u003e was successfully created") 转换为正常结果,但我想做的是通用的,预期结果将仅使用该方法得到,所以我想将预期消息转换为实际消息格式。但我不知道该怎么做
猜你喜欢
  • 1970-01-01
  • 2020-12-05
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2020-07-23
  • 1970-01-01
  • 1970-01-01
  • 2019-03-14
相关资源
最近更新 更多