11

我想将一个字符串对象转换为 ByteString。我尝试使用 ByteString.CopyFrom() 函数进行转换,但返回值始终是“{Google.ProtocolBuffers.ByteString}”。为什么?我能怎么做?

我这样使用的功能。

结果

4

3 回答 3

12

string已成功转换为ByteStream. 如果您在监视窗口中看到{Google.ProtocolBuffers.ByteString},则仅表示ByteStream没有覆盖该ToString方法。简而言之,Visual Studio 不知道如何显示 a ByteStream,因此只显示类型名称。

也就是说,该CopyFrom方法的重载允许您直接使用字符串:

var APP_DEF_TEA_KEY = ByteString.CopyFrom("e#>&*m16", Encoding.Unicode);
于 2016-10-09T13:33:23.217 回答
2

您可以使用 ByteString 类中的一种方法将字符串转换为 ByteArray ByteString.copyFromUtf8(stringText)

于 2021-05-04T18:01:27.160 回答
0

根据文档Google.ProtocolBuffers.ByteStream需要编码才能知道如何显示其内容。使用ByteStream.ToString(Encoding encoding)ByteStream.ToStringUtf8()

于 2018-12-07T12:24:30.437 回答