假设我有一个名为features.properties
的属性文件,其中一些属性以字节数组格式加密。
e.g。 color = [64,14,76,92,5,114,54,31]
我想在java中读取这个属性值。
如果我使用properties.getProperty("color")
,因为return type
的{{1}}是getProperty()
,它会返回一个我认为是字节数组的基地址的地址。
我应该使用String
来阅读它,但不知道如何使用它。请帮忙!
答案 0 :(得分:2)
其某些属性以字节数组格式加密
我怀疑你实际上并不是指“加密”。您只是将字节表示为文本 - 我没有看到任何加密。如果他们真的 加密了,那么您需要采取单独的步骤。
它返回一个地址,我认为是字节数组的基地址
不,它会将值作为字符串返回给您,例如“[64,14,76,92,5,114,54,31]”。据我所知,属性文件没有直接支持二进制数据。
最简单的方法是将格式更改为仅使用base64编码或字符串的十六进制。有很多选项可以将base64 / hex数据从文本转换为二进制。 (在Stack Overflow上搜索关于它的问题。)
如果无法更改格式,则需要删除前导和尾随方括号,用逗号分割结果,修剪每个单独的部分(“64”等)和然后解析,例如与Byte.parseByte
。