Java 将字符串转换为 JLabel
Java convert String to JLabel
java 中的 JLabel 可以转换为字符串(使用 .toString()
)
同样,我想把我从文件中读取的那个字符串再次转换回 JLabel。
(如果这不可能,他们会是另一种将 JLabel 存储在文件中然后重新创建它的方法)
我同意 MadProgrammer 的观点,即 XMLEncoder 和 XMLDecoder 是可行的方法。
让您很好地了解如何使用它们,但我更改了这段代码以专门使用 JLabel。
String toString(JLabel jl) {
ByteArrayOutputStream baos = new ByteArrayOutputStream();
XMLEncoder e = new XMLEncoder(baos);
e.writeObject(jl);
e.close();
return new String(baos.toByteArray());
}
JLabel fromString(String str) {
XMLDecoder d = new XMLDecoder(new ByteArrayInputStream(str.getBytes()));
JLabel label = (JLabel) d.readObject();
d.close();
return label;
}
java 中的 JLabel 可以转换为字符串(使用 .toString()
)
同样,我想把我从文件中读取的那个字符串再次转换回 JLabel。
(如果这不可能,他们会是另一种将 JLabel 存储在文件中然后重新创建它的方法)
我同意 MadProgrammer 的观点,即 XMLEncoder 和 XMLDecoder 是可行的方法。
String toString(JLabel jl) {
ByteArrayOutputStream baos = new ByteArrayOutputStream();
XMLEncoder e = new XMLEncoder(baos);
e.writeObject(jl);
e.close();
return new String(baos.toByteArray());
}
JLabel fromString(String str) {
XMLDecoder d = new XMLDecoder(new ByteArrayInputStream(str.getBytes()));
JLabel label = (JLabel) d.readObject();
d.close();
return label;
}