Java语言计算protobuf编译数据后的字节数

proto文件:

option java_package = "protobuf";  
option java_outer_classname="PersonProtos"; 
message Person {  
  required string name = 1;  
  required int32 id = 2;   
  }

将上述proto文件通过protoc.exe转换成java文件后,导入项目(导入过程可以参考上一篇博客)。实现功能的代码如下:

package com.maven.demo.ProtoBuf;


import java.io.IOException;
import protobuf.PersonProtos;
public class App 
{
	
    public static void main( String[] args ) throws IOException
    {
    	PersonProtos.Person.Builder personBuilder = PersonProtos.Person.newBuilder();
    	personBuilder.setId(12);
    	personBuilder.setName("li ming");
    	PersonProtos.Person xxg = personBuilder.build();
    	byte[] byteArray =xxg.toByteArray();
    	
        System.out.println( byteArray.length );
    }
}


猜你喜欢

转载自blog.csdn.net/weixin_40113118/article/details/81003760