使用java中的数组读取配置文件

时间:2011-06-20 14:14:14

标签: java configuration-files

我已经制作了一个java应用程序来操作它作为输入获得的几个矩阵,然后输出一些文本。目前,矩阵在我的应用程序中进行了硬编码(用于测试),但重新编译对于新矩阵来说是非常愚蠢的。

所以我正在寻找一种适合输入矩阵的配置文件格式。

我知道我可以轻松地读取ini文件(What is the easiest way to parse an INI file in Java?),但是然后将[[1,2,3],[4,5,6]]这样的东西解析为矩阵可能需要恼人的字符串操纵。

有没有人知道在这些矩阵中读取的好方法?

3 个答案:

答案 0 :(得分:3)

CSV文件怎么样?

您的输入可能类似于

1;2;3
4;5;6

还有一些已构建的CSV解析器......如http://commons.apache.org/sandbox/csv/

答案 1 :(得分:3)

您可以使用JSON作为数据交换格式。看看JSON in Java

答案 2 :(得分:1)

我在csv文件上排名第二。但是,使用属性文件也很方便,一行代表一个矩阵。像这样:

property.test="A,B,C;A1,B1,C1;A2,B2,C2";

然后使用java.util.Properties读取文件。

解析: 这里的技巧是选择分隔符,它们不能出现在条目本身中。

String str = "A,B,C;A1,B1,C1;A2,B2,C2";
String[] rows = str.split(";");
if(rows != null && rows.length > 0){
   String[][] result = new String[rows.length][];
   for(int row = 0; row < rows.length; row++){
       result[row] = rows[row].split(",");      
   }
 }