如何在Android上只下载.csv文件的第一部分?

时间:2010-11-09 17:09:28

标签: android http file csv download

在我的应用中,我必须从.csv文件中提供一些可从网络访问的数字。现在,这个.csv非常大。我不想下载和处理整个事情,没有意义。我的数字总是在文件的开头,在指定的位置 - 让我们说位置5到10。

你能给我一些如何实现这个的提示吗?我知道如何下载整个内容,但不知道如何只下载它的一部分。

感谢。

3 个答案:

答案 0 :(得分:2)

的伪:

BufferedReader br = new BufferedReader (new InputStreamReader(remoteStream));
String sFirstLine = br.readLine();

remoteStream是与远程服务器的连接流。获取流的句柄与实际下载不同。只有BufferedReader.readLine()实际下载任何内容

答案 1 :(得分:0)

您是否可以访问该文件所在的服务器?您可以在服务器上进行处理。

例如,如果文件位于/myfile.csv,您可以在服务器上打开mycsvfile.php的流,进行处理并返回您感兴趣的位置。当然,您也有编写PHP代码(或其他)来执行此操作。

答案 2 :(得分:0)

你没有说文件服务的协议是什么,但是假设像http或ftp这样的标准,应该没有什么可以阻止你开始下载然后在你获得尽可能多的文件后中止它如果你需要,只要你自己实现协议的android端而不是使用其中一个内置机制(除非你发现内置机制也让你能够中止)。

我不相信java或ndk中简单的http下载器的实现太复杂了。在android上执行它不应该是独特的挑战,因为你已经可以使用所有普通的java和底层linux网络套接字机制。