为什么 StringBufferInputStream 文档推荐使用 StringReader 进行 String 到 Stream 的转换?

Why does StringBufferInputStream doc recommend StringReader for String to Stream conversion?

answered repeatedly 一样,您可以轻松地将 String 转换为 InputStream

在浏览 Java 8 文档时,我发现了长期弃用的 StringBufferInputStream class,其中指出

As of JDK 1.1, the preferred way to create a stream from a string is via the StringReader class.

这里指的是什么方式?在非默认库中有几种方法需要 classes,例如 Apache Commons IO 中容易出错的 ReaderInputStream,但我正在寻找文档中提到的首选方法。其他问题中引用的解决方案足以满足我的用例,但我仍然想知道文档引用的内容。

更新

显然这是一个尚未修复的 16 year old bug。 link 中建议的解决方案是使用已弃用的 class。我无法想象这就是文档所说的意思。

我不知道 javadoc 部分的答案,但您指出的第一个答案是合理的:只需使用 String.getBytes(encoding) 获取字节数组,然后使用 ByteArrayInputStream

但通常更重要的问题是:你到底为什么需要这样的转换?在一个设计良好的系统中,你永远不需要朝这个方向前进:它违反了正常的事物流程,在 JDK 内你处理 chars 和 Strings,而在外部bytes 和 Streams。所以在这个方向上的转换是非常罕见的,JDK 似乎没有必要有明确的支持。