我想要某种包含文本的文件,有点像这样:
John.file:
Name= John
Age = 333
在我的程序中,我想以某种方式用这些数据创建一个 Person,有点像:
Person p = new Person(John.file);
在文件中查找数据以便我可以添加诸如“333”到 Person p 的年龄变量的一些好的替代方法是什么?除非有其他选择,否则我正在考虑尝试 regex api!
我想要某种包含文本的文件,有点像这样:
John.file:
Name= John
Age = 333
在我的程序中,我想以某种方式用这些数据创建一个 Person,有点像:
Person p = new Person(John.file);
在文件中查找数据以便我可以添加诸如“333”到 Person p 的年龄变量的一些好的替代方法是什么?除非有其他选择,否则我正在考虑尝试 regex api!
您可以使用作为 JDK 一部分的属性文件功能来完成您想要做的事情。有关更多信息,请参阅文档。
Properties properties = new Properties();
try {
properties.load(new FileInputStream("/my/path/John.properties"));
} catch (IOException e) {
...
}
System.out.println(properties.getProperty("Name")); // Prints John
为了完整起见,这里是 /my/path/John.properties 的内容。
Name=John
Age=333
绝对为此使用 XML。您可以使用JAXB将 XML 反序列化为 Java 类。对于像您描述的那样的简单类,这将是一件小事。XML 看起来像:
<Person>
<Name>John</Name>
<Age>333</Age>
</Person>
XML、JSON、自定义属性文件或您自己的解析器,可能基于Knuth-Morris-Pratt?