JAVA InputStream.toString() 回到 InputStream
JAVA InputStream.toString() back to InputStream
我正在玩一个名为 Sunflow 的旧 JAVA 渲染器。
在它的某些 类 中,其中一种方法将图像 InputStream
保存为字符串 (InputStream.toString()
)。
现在我想知道:有没有办法将保存的 InputStream.toString()
值转换回 InputStream
?
你可以这样做:
InputStream stream = new ByteArrayInputStream(mystr.getBytes(StandardCharsets.UTF_8));
假设字符串是 UTF-8 编码的。
不,InputStream
不会覆盖 toString()
,它使用 Object
的现有基础实现,即 returns:
getClass().getName() + "@" + Integer.toHexString(hashCode())
这个方法调用的结果是这样的:InputStream@<hex_hash_code>
,你不能从这个 String
.
中恢复原来的 InputStream
我正在玩一个名为 Sunflow 的旧 JAVA 渲染器。
在它的某些 类 中,其中一种方法将图像 InputStream
保存为字符串 (InputStream.toString()
)。
现在我想知道:有没有办法将保存的 InputStream.toString()
值转换回 InputStream
?
你可以这样做:
InputStream stream = new ByteArrayInputStream(mystr.getBytes(StandardCharsets.UTF_8));
假设字符串是 UTF-8 编码的。
不,InputStream
不会覆盖 toString()
,它使用 Object
的现有基础实现,即 returns:
getClass().getName() + "@" + Integer.toHexString(hashCode())
这个方法调用的结果是这样的:InputStream@<hex_hash_code>
,你不能从这个 String
.
InputStream