String 键值对解析
时间: 2023-07-01 13:07:12 浏览: 56
键值对解析是一种常见的数据解析方式,常用于读取配置文件、解析网络协议等。在 Java 中,可以使用 `java.util.Properties` 类来实现键值对解析,该类提供了一组方法来读取、写入和操作属性列表。
下面是一个简单的例子,演示如何使用 `Properties` 类解析字符串键值对:
```java
import java.util.Properties;
public class KeyValueParser {
public static void main(String[] args) {
String input = "name=John\nage=30\naddress=123 Main St.";
Properties properties = new Properties();
try {
properties.load(new java.io.StringReader(input));
String name = properties.getProperty("name");
int age = Integer.parseInt(properties.getProperty("age"));
String address = properties.getProperty("address");
System.out.println("Name: " + name);
System.out.println("Age: " + age);
System.out.println("Address: " + address);
} catch (Exception e) {
e.printStackTrace();
}
}
}
```
在上面的例子中,我们先定义了一个包含三个键值对的字符串:`name=John\nage=30\naddress=123 Main St.`。然后创建了一个 `Properties` 对象,使用 `load()` 方法将字符串解析为键值对存储在属性列表中。接着,我们使用 `getProperty()` 方法获取指定键的值,并在控制台打印出来。
输出结果为:
```
Name: John
Age: 30
Address: 123 Main St.
```
需要注意的是,在使用 `load()` 方法时,输入的字符串必须符合标准的 Java 属性文件格式,即每行一个键值对,键和值之间用等号(=)分隔,键值对之间用换行符(\n)分隔。如果输入的字符串不符合这个格式,`load()` 方法将会抛出异常。