如何将 Protobuf ByteString 转换为 java 中的八进制转义字符串?

How to convert Protobuf ByteString to an octal-escaped String in java?

谁能告诉我如何将 protobuf 的 ByteString 转换为 java 中的 octal escape sequence 字符串?

在我的例子中,我得到的 ByteString 值为 647,因此,当我使用 System.out.println() 在控制台中打印字符串值时,我应该得到 "647".

非常感谢。

我用过http://doc.akka.io/japi/akka/2.3.7/akka/util/ByteString.ByteStrings.html 你会看到方法 decodeString(java.lang.String charset)

其他参见https://github.com/akka/akka/issues/18738

通常,您会使用 ByteString#toString(Charset) 将 ByteString 转换为 String。此方法允许您指定文本编码的字符集。如果它是 UTF-8,您还可以使用方法 toStringUtf8() 作为快捷方式。

不过,从你的问题来看,你似乎真的想使用 C 风格的三位八进制转义符来生成转义格式。据我所知,没有 public 函数可以做到这一点,但是 you can see the code here。您可以将该代码复制到您自己的项目中并使用它。