所有
我想知道如何快速阅读在线文件的最后一行,例如“http://www.17500.cn/getData/ssq.TXT”,
我知道RandomAccessFile类,但它似乎只能读取本地文件。有什么建议?? TKS提前。
答案 0 :(得分:3)
你必须仔细阅读整个读者,并且只保留最后一行:
String line;
String lastLine = null;
while ((line = reader.readLine()) != null) {
lastLine = line;
}
编辑:正如Joachim在评论中所说,如果您知道最后一行永远不会超过(例如)500字节,您可以将HTTP请求中的Range标头设置为-500,因此只下载最后500个字节。可以使用与上述相同的算法。
但是,如果编码是多字节的(如UTF-8),我不知道它是否能正确处理从多字节编码字符中间开始的流。使用ASCII或ISO-8859-1,您将不会遇到任何问题。
另请注意,服务器不会被强制遵守范围请求,并且可以返回整个文件。
httpConnection.setRequestProperty("Range","-500");