// 示例代码:将 Java String 转换为对象
import java.beans.XMLDecoder;
import java.beans.XMLEncoder;
import java.io.ByteArrayInputStream;
import java.io.ByteArrayOutputStream;
import java.io.IOException;
class Person {
    private String name;
    private int age;
    // 构造函数
    public Person(String name, int age) {
        this.name = name;
        this.age = age;
    }
    // Getter 和 Setter 方法
    public String getName() {
        return name;
    }
    public void setName(String name) {
        this.name = name;
    }
    public int getAge() {
        return age;
    }
    public void setAge(int age) {
        this.age = age;
    }
    @Override
    public String toString() {
        return "Person{name='" + name + "', age=" + age + "}";
    }
}
public class StringToObjectExample {
    // 将对象转换为 XML 字符串
    public static String objectToString(Person person) throws IOException {
        ByteArrayOutputStream bout = new ByteArrayOutputStream();
        XMLEncoder encoder = new XMLEncoder(bout);
        encoder.writeObject(person);
        encoder.close();
        return bout.toString();
    }
    // 将 XML 字符串转换为对象
    public static Person stringToObject(String xmlString) throws IOException, ClassNotFoundException {
        ByteArrayInputStream bin = new ByteArrayInputStream(xmlString.getBytes());
        XMLDecoder decoder = new XMLDecoder(bin);
        Person person = (Person) decoder.readObject();
        decoder.close();
        return person;
    }
    public static void main(String[] args) {
        try {
            // 创建一个 Person 对象
            Person originalPerson = new Person("Alice", 30);
            // 将对象转换为字符串
            String personString = objectToString(originalPerson);
            System.out.println("转换为字符串: " + personString);
            // 将字符串转换回对象
            Person convertedPerson = stringToObject(personString);
            System.out.println("转换回对象: " + convertedPerson);
        } catch (Exception e) {
            e.printStackTrace();
        }
    }
}name 和 age 属性,并提供了构造函数、getter 和 setter 方法。XMLEncoder 将 Person 对象序列化为 XML 格式的字符串。XMLDecoder 将 XML 格式的字符串反序列化为 Person 对象。Person 对象,将其转换为字符串,再将字符串转换回对象,并输出结果。通过这种方式,你可以轻松地在 Java 中实现字符串与对象之间的相互转换。
上一篇:java如何判断字符串是否为数字
下一篇:java math.random
Laravel PHP 深圳智简公司。版权所有©2023-2043 LaravelPHP 粤ICP备2021048745号-3
Laravel 中文站