码迷,mamicode.com
首页 > 其他好文 > 详细

Protobuf的奇怪问题解决--Expected top - level statement (e.g "message")

时间:2015-04-21 09:38:11      阅读:801      评论:0      收藏:0      [点我收藏+]

标签: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

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!