すべてのプロダクト
Search
ドキュメントセンター

Object Storage Service:範囲ダウンロード (Android SDK)

最終更新日:Nov 30, 2025

範囲ダウンロードを実行して、オブジェクトの特定の範囲のデータをダウンロードできます。

注意事項

  • このトピックのサンプルコードを実行する前に、カスタムドメイン名や Security Token Service (STS) などを使用して OSSClient インスタンスを作成する必要があります。詳細については、「初期化 (Android SDK)」をご参照ください。

サンプルコード

次のサンプルコードは、範囲ダウンロードを実行してオブジェクトの特定の範囲のデータをダウンロードする方法の例を示しています。

// ファイルをダウンロードするリクエストを作成します。
// バケット名 (例: examplebucket) とオブジェクトの完全なパス (例: exampledir/exampleobject.txt) を指定します。 オブジェクトの完全なパスにバケット名を含めることはできません。
GetObjectRequest get = new GetObjectRequest("examplebucket", "exampledir/exampleobject.txt");

// 範囲を設定します。
get.setRange(new Range(0, 99)); // 0 バイト目から 99 バイト目までの 100 バイトのデータをダウンロードします。 範囲は 0 バイト目から始まります。
// get.setRange(new Range(100, Range.INFINITE)); // 100 バイト目からファイルの末尾までのデータをダウンロードします。

OSSAsyncTask task = oss.asyncGetObject(get, new OSSCompletedCallback<GetObjectRequest, GetObjectResult>() {
    @Override
    public void onSuccess(GetObjectRequest request, GetObjectResult result) {
        // リクエストは成功です。
        InputStream inputStream = result.getObjectContent();

        byte[] buffer = new byte[2048];
        int len;

        try {
            while ((len = inputStream.read(buffer)) != -1) {
                // ダウンロードしたデータを処理します。
            }
        } catch (IOException e) {
            e.printStackTrace();
        }
    }

    @Override
    public void onFailure(GetObjectRequest request, ClientException clientExcepion, ServiceException serviceException) {
        // リクエストは失敗しました。
        if (clientExcepion != null) {
            // ネットワークエラーなどのクライアント例外が発生しました。
            clientExcepion.printStackTrace();
        }
        if (serviceException != null) {
            // サービス例外が発生しました。
            Log.e("ErrorCode", serviceException.getErrorCode());
            Log.e("RequestId", serviceException.getRequestId());
            Log.e("HostId", serviceException.getHostId());
            Log.e("RawMessage", serviceException.getRawMessage());
        }
    }
});

関連ドキュメント

  • 範囲ダウンロードを実行するために使用される完全なサンプルコードについては、GitHub をご参照ください。

  • 範囲ダウンロードを実行するために呼び出すことができる API 操作の詳細については、「GetObject」をご参照ください。

  • OSSClient インスタンスを初期化する方法の詳細については、「初期化」をご参照ください。