0

サーバーからビッグデータをダウンロードする必要があります。データが非常に大きいため、一度にダウンロードできません。何か考えがありますか?ありがとうございます。

4

3 に答える 3

0

それを行うことについて私が考えることができる唯一の論理的な方法は、インデックスを使用してダウンロードするためにデータをチャンクに事前に配置することです。(chunkCount * chunkSize)インデックスは受信したチャンクの数に応じて増加するため、サーバーがファイルを送信すると、バイトストリームからスキップして、次のバイトの送信を開始できることがわかりchunkSizeます。

もちろん、これはかなり過剰な数のリクエストを意味するので、YMMVです。

于 2012-04-16T15:41:23.313 に答える
0

サーバーがサポートしている場合は、HTTP バイト範囲を使用してファイルの特定の部分を要求できます。

このページでは、HTTP バイト範囲リクエストについて説明しています: http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.35.1

次のコードは、最初の 100 バイトをスキップするよう要求するリクエストを作成しますが、ファイルの残りは返します。

HttpWebRequest request = (HttpWebRequest)WebRequest.Create(@"http://example.com/somelargefile");
request.Headers.Add("Range", "bytes=100-");
于 2012-04-16T15:50:50.293 に答える
0

MSDN には、役立つ可能性のあるバックグラウンド転送サービスのコード サンプルがあります私はそれを使ったことはありませんが、サンプルはあなたに出発点を与えるかもしれません.

于 2012-04-18T09:38:43.623 に答える