2017-02-11 68 views
1

假设我有一个名为features.properties的属性文件,其中一些属性以字节数组格式加密。如何从属性文件中读取字节数组作为属性

例如颜色= [64,14,76,92,5,114,54,31]

我想读取java中的这个属性值。

如果我使用properties.getProperty("color"),因为getProperty()return typeString,它返回我,我认为是字节数组的基本地址的地址。 我应该使用FileInputStream来阅读它,但不知道如何使用它。请帮忙!

回答

1

与它的一些属性中的字节数组格式

我怀疑你实际上并不意味着加密的“加密”在这里。你只是将字节表示为文本 - 我没有看到任何加密。如果他们真的也是加密,那么您需要单独执行一个步骤。

它返回我,我觉得一个地址字节数组

号的基址,它会返回值作为一个字符串,例如“[64,14,76,92,5,114,54,31]”。就我所知,属性文件没有直接支持二进制数据。

最简单的方法是将格式更改为只使用base64编码或十六进制字符串。有很多选项可以将base64/hex数据从文本转换为二进制文件。 (搜索有关堆栈溢出的问题。)

如果你不能改变格式,那么你需要删除前后方括号,用逗号分割结果,修剪每个单独的部分(“64”等),然后解析,例如与Byte.parseByte