// 将 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() {}
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 byteArrayOutputStream = new ByteArrayOutputStream();
XMLEncoder xmlEncoder = new XMLEncoder(byteArrayOutputStream);
xmlEncoder.writeObject(person);
xmlEncoder.close();
return byteArrayOutputStream.toString();
}
// 将 XML 字符串转换回对象
public static Person stringToObject(String xmlString) throws IOException {
ByteArrayInputStream byteArrayInputStream = new ByteArrayInputStream(xmlString.getBytes());
XMLDecoder xmlDecoder = new XMLDecoder(byteArrayInputStream);
Person person = (Person) xmlDecoder.readObject();
xmlDecoder.close();
return person;
}
public static void main(String[] args) {
try {
// 创建一个 Person 对象
Person originalPerson = new Person("John", 30);
// 将对象转换为字符串
String personXmlString = objectToString(originalPerson);
System.out.println("XML String: " + personXmlString);
// 将字符串转换回对象
Person convertedPerson = stringToObject(personXmlString);
System.out.println("Converted Person: " + convertedPerson);
} catch (IOException e) {
e.printStackTrace();
}
}
}
Person 类:创建一个简单的类,包含两个属性 name 和 age,以及相应的构造函数、getter 和 setter 方法。objectToString 方法:将 Person 对象序列化为 XML 格式的字符串。使用 XMLEncoder 来完成这一操作。stringToObject 方法:将 XML 格式的字符串反序列化为 Person 对象。使用 XMLDecoder 来完成这一操作。main 方法:演示如何使用上述方法将对象转换为字符串,再将字符串转换回对象。通过这种方式,可以实现从字符串到对象的转换。
下一篇:java toarray
Laravel PHP 深圳智简公司。版权所有©2023-2043 LaravelPHP 粤ICP备2021048745号-3
Laravel 中文站