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
