gpt4 book ai didi

java - 读取 url 流中的最后 n 行问题

转载 作者:行者123 更新时间:2023-12-01 19:14:52 24 4
gpt4 key购买 nike

我在读取 url 的最后 n 行时遇到问题。怎么做 ?我有 url.openstream 但没有具有流输入的 RandomAccessFile 构造函数。有人可以帮助我吗?是否已经有这个库了? (我知道当我有文件时如何使用 RandomAccess 实现,但如何将流更改为文件)。

最佳答案

  1. 照常打开 URL 流。
  2. 将返回的InputStream包装在BufferedReader中这样你就可以逐行阅读。
  3. 维护LinkedList您将在其中保存这些行。
  4. 从 BufferedReader 读取每一行后:
    1. 将该行添加到列表中。
    2. 如果列表的大小大于“n”,则调用 LinkedList#removeFirst() .
  5. 读取完流中的所有行后,列表将包含最后“n”行。

例如(未经测试,仅供演示):

BufferedReader in = new BufferedReader(url.openStream());
LinkedList<String> lines = new LinkedList<String>();
String line = null;
while ((line = in.readLine()) != null) {
lines.add(line);
if (lines.size() > nLines) {
lines.removeFirst();
}
}
// Now "lines" has the last "n" lines of the stream.

关于java - 读取 url 流中的最后 n 行问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7148335/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com