Java 解析conf文件

Java 解析conf文件,java,file,parsing,Java,File,Parsing,您能告诉我解析这样一个文件的最佳方法吗: # ----------------------------------------------------------------------- # prices # ----------------------------------------------------------------------- Au333 237.41 Au375 267.35 Au500 356.47 /#-其评论 Au333=237.41(类似

您能告诉我解析这样一个文件的最佳方法吗:

# -----------------------------------------------------------------------
# prices
# -----------------------------------------------------------------------

Au333    237.41
Au375    267.35
Au500    356.47
/#-其评论

Au333=237.41(类似键=值)。但是在我的文件中没有“=”,而是一些空间。
我想要Java中的类属性之类的东西。但是,当键和值之间有“=”时,这个类就工作了。在我看来,这个类是CSV文件的一个特例。您可以使用来解析它

  CSVReader reader = new CSVReader(new FileReader("yourfile.csv"), "  ");
     String [] nextLine;
     while ((nextLine = reader.readNext()) != null) {
        // nextLine[] is an array of values from the line
        System.out.println(nextLine[0] + nextLine[1] + "etc...");
    }
  }

在我看来,您拥有的是CSV文件的一个特例。您可以使用来解析它

  CSVReader reader = new CSVReader(new FileReader("yourfile.csv"), "  ");
     String [] nextLine;
     while ((nextLine = reader.readNext()) != null) {
        // nextLine[] is an array of values from the line
        System.out.println(nextLine[0] + nextLine[1] + "etc...");
    }
  }

读取每一行并创建一个方法来提取两个数据点。 差不多

public static void parseLine(String line)
{
    StrArr.add(line.substring(0,5));
    line = line.substring(5,line.length);
    IntArr.add(Integer.parseInt(line));
}

读取每一行并创建一个方法来提取两个数据点。 差不多

public static void parseLine(String line)
{
    StrArr.add(line.substring(0,5));
    line = line.substring(5,line.length);
    IntArr.add(Integer.parseInt(line));
}

以下是完成任务的简单方法:

String keyAndValue = "Au333    237.41";
String[] keyAndValueArray = keyAndValue.split(" ");
String key = keyAndValue.split(" ")[0];
String value = keyAndValue.split(" ")[keyAndValueArray.length - 1];

希望有帮助

以下是完成任务的简单方法:

String keyAndValue = "Au333    237.41";
String[] keyAndValueArray = keyAndValue.split(" ");
String key = keyAndValue.split(" ")[0];
String value = keyAndValue.split(" ")[keyAndValueArray.length - 1];

希望有帮助

空白是Java文件中的一个关键终止符,所以您所拥有的应该可以工作

数据属性 PropsLoaderExample.java
注意:不要接受这样的异常。这只是为了测试。

空白是Java文件中的一个关键终止符,所以您所拥有的应该可以工作

数据属性 PropsLoaderExample.java
注意:不要接受这样的异常。这只是为了测试。

我想您可以编写自己的类。你试过什么了吗?我只是觉得有办法。如果没有,我将自己编写一个解析器,我相信load(InputStream is)方法已经支持这一点。你能试着用上面的属性文件加载属性吗?我很笨,真的属性可以和我的文件一起工作。非常感谢:我想你可以写你自己的课了。你试过什么了吗?我只是觉得有办法。如果没有,我将自己编写一个解析器,我相信load(InputStream is)方法已经支持这一点。你能试着用上面的属性文件加载属性吗?我很笨,真的属性可以和我的文件一起工作。非常感谢:D