java - 如何将字符串保存在本地缓冲区中,以便扫描仪可以重新读取它?

标签 java string java.util.scanner

我正在从事一些处理 HTML 页面的项目。 我不想一遍又一遍地下载同一个页面,所以我想保存在本地。 我经常使用 Scanner,但是 Scanner 需要一个 InputStreamReader。 现在我设法将 HTML 页面保存到本地 StringBuffer,但是我做不到 此 StringBufferScanner 一起使用。

我可以将这个 StringBuffer 用作 InputStreamReader 吗?如果不行,那我可以用什么方法呢?

最佳答案

Scanner有一个constructor服用Readable .在所有 Readable 实现中,CharBuffer似乎最适合您的目的,因为您想要一个可读可写的源。

String string = getItSomehow();
CharBuffer buffer = CharBuffer.wrap(string);
// ...
Scanner scanner = new Scanner(buffer);
// ...

关于java - 如何将字符串保存在本地缓冲区中,以便扫描仪可以重新读取它?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5364038/

相关文章:

java - 在Java中检查类的天气对象是否分配了类的实例的方法是什么?

java - OSGi 声明式服务和 SonarQube

c - 如何计算没有。包含子字符串 "00"的二进制字符串?

java - Scanner.nextFloat 的奇怪行为

java - 使用扫描仪和字符串标记器读取文件并检索邻接列表

java - 如何通过bazel获取测试的日志消息?

java - 为什么 Spring MVC 报告 "No converter found for return value of type: class org.json.JSONObject"?

带分号的 C 参数出现被截断

C 程序从 .txt 文件获取每行的第一个单词并将该单词打印到另一个 .txt 文件 : Kind of works but also prints random letters

java - 通过扫描仪输入链表