Java文本属性文件:有没有办法测试有效性?

时间:2011-12-01 20:40:06

标签: java parsing properties

看起来Properties.load()很高兴加载二进制垃圾,除非它找到无效的\uxxxx转义字符。有没有办法更严格?我只是看了the text format of properties files的文档,我很困惑如何判断.properties文件是否有效。


编辑:我来自哪里:我想我是否将我的应用程序指向一个10MB的二进制文件,它会拒绝它。 10MB文件确实被拒绝了,但仅仅是因为\uxxxx个字符。

我想我可以在输入流上创建一个过滤器,以限制一些“理智”的数量,如1MB,并过滤掉任何键/值对,其中键与可接受的模式不匹配。但我希望它可能有一些最小的结构来拒绝严重损坏的文件。

2 个答案:

答案 0 :(得分:2)

属性文件应该是通用格式。应用程序负责确保每个属性都具有合理的价值。

答案 1 :(得分:1)

检查page。它说,如果输入流包含格式错误的Unicode转义序列,那么load方法会抛出IllegalArgumentException。