Hello all;
I need to serialize a protobuf message to a string so that it can be
passed outside my program. The below fails, I'm guessing due to UTF8
encoding issues:
byte[] arr = msg.toByteArray();
String str = new String(arr);
// ... pass str around ...
MsgType msg2 = MsgType.parseFrom(str.getBytes()); // <-- throws
InvalidProtocolBufferException
So, reading the API, I thought I should use ByteStrings, with their
handy UTF8 encoding methods, but this doesn't work either:
ByteString bs = msg.toByteString();
String str = bs.toStringUtf8();
// ... pass str around ...
ByteString bs2 = ByteString.copyFromUtf8(str);
MsgType msg2 = MsgType.parseFrom(bs2); // <-- Still throws exception
What am I doing wrong? What's the best way to do java string
serialization of protobuf messages?
Thanks in advance,
Will
--
You received this message because you are subscribed to the Google Groups
"Protocol Buffers" group.
To post to this group, send email to proto...@googlegroups.com.
To unsubscribe from this group, send email to
protobuf+unsubscr...@googlegroups.com.
For more options, visit this group at
http://groups.google.com/group/protobuf?hl=en.