一、背景
最近做项目有一个地址库文件需要放在后端
由于文件在 jar 包中的问题,一些读取文件的姿势失效(方便的 Guava Files)
最后通过 getResourceAsStream 解决
接下来遇到了一件奇怪的事情,部分汉字乱码了,
调整编码,重新编辑汉字都试过了,无法解决。
最后求助于百度搜索,得到了一些有效的信息。
汉字是两个字节的,如果每次读固定个字节,可能会把汉字截断,造成乱码。
再次印证了基础知识的重要性!
二、相关代码
2.1 罪魁祸首
1 | private static String getAddressJson(String path) throws IOException { |
2.2 完美运行
据说现在很多人没法纯手写通过流读取文件了…(说的就是我!)
1 | private static String getAddressJson(String path) throws IOException { |
三、参考文章
CSDN