0
我試圖從使用Google Protocol Buffers的服務器上的客戶端接收一些數據,具體地說,是Jon Skeet的csharp端口。我執行以下操作:ReadRawVarint32() - Google協議緩衝區的問題csharp-port
using Google.ProtocolBuffers;
...
Stream InputStream = client.GetStream();
CodedInputStream input = CodedInputStream.CreateInstance(InputStream);
...
uint length = CodedInputStream.ReadRawVarint32(InputStream);
我從最後一行的錯誤消息,我可以不能解決:一個對象引用該電源線以訪問非靜態成員「Google.ProtocolBuffers.CodedInputStream.ReadRawVarint32()」 。
Basicly我想做的事情會是這樣的Java版本是什麼:
InputStream iStream = client.getInputStream();
CodedInputStream input = CodedInputStream.newInstance(iStream);
int read = is.read();
if(-1 != read) {
int length = CodedInputStream.readrawVarint32(read, is);
byte[] bytes = input.readRawBytes(length);
// My proto stuff
Communication.Packet container = null;
try {
container = Communication.Packet.parseFrom(bytes);
} catch (InvalidProtocolBufferException iPBE) {
continue;
}
AbstractMessage message = container;
if(container.hasLogin()) {
message = container.getLogin();
}
System.out.println(message.toString());
任何幫助嗎?
在此先感謝。
對不起......我的錯誤。謝謝! – omniyo