web-dev-qa-db-ja.com

javaでProtobuf ByteStringをStringに変換する方法

Javaでprotobuf ByteStringをStringに変換する方法を誰かに教えてもらえますか?

私の場合、ByteString値を "\ 376\024\367"として取得しています。 ByteStringからStringと同じものを取得する方法はありますか? System.out.println()を使用してコンソールで文字列値を出力すると、\ 376\024\367になるはずです。

どうもありがとう。

7
Dinesh Kumar J

通常、ByteStringは ByteString#toString(Charset) を使用してStringに変換します。このメソッドを使用すると、テキストがエンコードされる文字セットを指定できます。UTF-8の場合は、メソッドtoStringUtf8()をショートカットとして使用することもできます。

しかし、あなたの質問から、Cスタイルの3桁の8進エスケープを使用して、エスケープされた形式を実際に作成したいようです。私の知る限り、これを行うためのパブリック関数はありませんが、 ここにコードを表示できます です。そのコードを独自のプロジェクトにコピーして使用できます。

17
Kenton Varda