文
章
目
录
章
目
录
Java StringReader类表示字符流的源是一个字符串。这个类的主要用途是将字符串内容传递给接受Reader类型参数的方法。
1.StringReader类
- 它是为了读取字符流的源是一个字符串。
- 它是java.io包的一部分。
- 它扩展了抽象类Reader。
- 它实现了Closeable,AutoCloseable和Readable接口。
- 它提供了从流中读取字符的方法。
2.创建StringReader
要在应用程序中使用StringReader,我们必须首先从java.io包中导入它,使用import语句。要创建StringReader的实例,请使用它的构造函数之一。
在下面的示例中,StringReader将从字符串data中读取字符。
String data = "humpty dumpty";
StringReader stringReader = new StringReader(data);
3. 使用StringReader
让我们来看几个使用Java中的StringReader读取文件的示例。
3.1 使用StringReader读取字符串中的字符
在给定的示例中,我们从字符串data中读取字符。然后我们将读取的字符打印到标准输出中。
String data = "humpty dumpty";
try (StringReader stringReader
= new StringReader(data))
{
int ch = stringReader.read();
while (ch != -1)
{
ch = stringReader.read();\
//System.out.print((char)ch);
}
}
3.2 使用StringReader解析XML
在给定的示例中,我们想要解析一个XML字符串(通常作为API响应获得)到JAXB Document对象。parse()方法接受Reader类型,因此我们使用StringReader来包装字符串响应,并将其传递给parse()方法。
DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance();
factory.setNamespaceAware(true);
DocumentBuilder documentBuilder = factory.newDocumentBuilder();
InputSource inputSource = new InputSource(new StringReader(xml));
Document document = documentBuilder.parse(inputSource);