// 使用高级接口必须先保证本进程存在一个 TransferManager 实例,如果没有则创建// 详细代码参见本页:高级接口 -> 创建 TransferManagerTransferManager transferManager = createTransferManager();// 存储桶的命名格式为 BucketName-APPID,此处填写的存储桶名称必须为此格式String bucketName = "examplebucket-1250000000";// 对象键(Key)是对象在存储桶中的唯一标识。详情请参见 [对象键](https://www.tencentcloud.com/document/product/436/13324)String key = "exampleobject";// 这里创建一个 ByteArrayInputStream 来作为示例,实际中这里应该是您要上传的 InputStream 类型的流long inputStreamLength = 1024 * 1024;byte data[] = new byte[inputStreamLength];InputStream inputStream = new ByteArrayInputStream(data);// 限速使用的单位是 bit/s, 这里设置上传限制为 10MB/sputObjectRequest.setTrafficLimit(80*1024*1024);try {// 高级接口会返回一个异步结果Upload// 可同步地调用 waitForUploadResult 方法等待上传完成,成功返回UploadResult, 失败抛出异常Upload upload = transferManager.upload(putObjectRequest);UploadResult uploadResult = upload.waitForUploadResult();} catch (CosServiceException e) {e.printStackTrace();} catch (CosClientException e) {e.printStackTrace();} catch (InterruptedException e) {e.printStackTrace();}// 确定本进程不再使用 transferManager 实例之后,关闭之// 详细代码参见本页:高级接口 -> 关闭 TransferManagershutdownTransferManager(transferManager);
// 使用高级接口必须先保证本进程存在一个 TransferManager 实例,如果没有则创建// 详细代码参见本页:高级接口 -> 创建 TransferManagerTransferManager transferManager = createTransferManager();// 存储桶的命名格式为 BucketName-APPID,此处填写的存储桶名称必须为此格式String bucketName = "examplebucket-1250000000";// 对象键(Key)是对象在存储桶中的唯一标识。详情请参见 [对象键](https://www.tencentcloud.com/document/product/436/13324)String key = "exampleobject";// 本地文件路径String localFilePath = "/path/to/localFile";File downloadFile = new File(localFilePath);GetObjectRequest getObjectRequest = new GetObjectRequest(bucketName, key);// 限速使用的单位是 bit/s, 这里设置下载限制为 10MB/sgetObjectRequest.setTrafficLimit(80*1024*1024);try {// 返回一个异步结果 Donload, 可同步的调用 waitForCompletion 等待下载结束, 成功返回 void, 失败抛出异常Download download = transferManager.download(getObjectRequest, downloadFile);download.waitForCompletion();} catch (CosServiceException e) {e.printStackTrace();} catch (CosClientException e) {e.printStackTrace();} catch (InterruptedException e) {e.printStackTrace();}// 确定本进程不再使用 transferManager 实例之后,关闭之// 详细代码参见本页:高级接口 -> 关闭 TransferManagershutdownTransferManager(transferManager);
本页内容是否解决了您的问题?