标签:proto 编码 e.g message
最近天天都在玩Protobuf,因此,最近总结的问题过半都是关于它的。话说昨天遇到一个很奇怪的问题,转换.proto为java文件的过程中,报错:Expected top - level statement (e.g "message")。截图如下:
查询问题原因,原来是由于编码格式的问题,因为,我使用UE打开了文件,并保存为UTF-8的形式。因此,会在文件的开头有一个特殊的字符,详见下图:
通过查找发现了问题的原因,由于我使用的是中文简体的windows,因此,他的默认编码为GB2312。如果proto使用了其他的编码格式,就会因为第一个字母为乱码而报错,我的这个文件就是UTF-8的。修改了编码格式之后,就可以正常生产java文件了。或者,一开始就使用notepad建立文件,也可以解决这个问题。
生产成功的截图如下:
Protobuf的奇怪问题解决--Expected top - level statement (e.g "message")
标签:proto 编码 e.g message
原文地址:http://blog.csdn.net/yangtzh/article/details/45165763