Java StringReader 类
- 它用于读取源为字符串的字符流。
- 它是
java.io
包的一部分。 - 它扩展了抽象类
Reader
。 - 它实现了
Closeable
、AutoCloseable
和Readable
接口。 - 它提供了从流中读取字符的方法。
欢迎 on
it
road
关闭一个 StringReader
在 StringReader
上调用 close()
方法会关闭流并释放与其关联的所有系统资源。
stringReader.close();
尽管如果没有关闭,StringReader
不会造成太多麻烦,因为它不会打开任何到文件或者网络套接字的连接。
StringReader
类Java StringReader
类表示一个字符流,其源是一个字符串。
这个类的主要用途是将一个String
内容传递给一个接受Reader
类型参数的方法。
创建一个 StringReader
要在应用程序中使用 StringReader
,我们必须首先使用 import 语句从包 java.io
中导入它。
要创建 StringReader 的实例,请使用其构造函数之一。
在下面给出的示例中,StringReader
将从字符串 data
中读取字符。
import java.io.StringReader; //Create an instance in the application code String data = "humpty dumpty"; StringReader stringReader = new StringReader(data);
Java StringReader 示例
示例 1:使用 StringReader 读取和打印字符串的字符
import java.io.IOException; import java.io.StringReader; public class StringReaderExample { public static void main(String[] args) throws IOException { String data = "humpty dumpty"; try (StringReader stringReader = new StringReader(data)) { int ch = stringReader.read(); while (ch != -1) { System.out.print((char)ch); ch = stringReader.read(); } } } }
示例 2:在 JAXB XML 解析中使用 StringReader
在给定的示例中,我们希望将 XML 字符串(通常作为 API 响应获得)解析为 JAXB Document
对象。parse()
方法接受 Reader
类型,因此我们使用 StringReader
来包装 String 响应并将其传递给 parse()
方法。
private Document parseXmlString(String xml) throws Exception { DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance(); factory.setNamespaceAware(true); DocumentBuilder documentBuilder = factory.newDocumentBuilder(); InputSource inputSource = new InputSource(new StringReader(xml)); return documentBuilder.parse(inputSource); }
日期:2020-09-17 00:09:38 来源:oir作者:oir