流式下载
流式下载是以输入流输出流的形式来对存储空间里的文件进行下载的。
当下载的文件太大或者一次性下载耗时太长时,您可以通过流式下载,一次处理部分内容,直到完成文件的下载。
ossObject对象使用完毕后必须关闭,否则会造成连接泄漏,导致请求无连接可用,程序无法正常工作
入参:
字段 | 说明 | 类型 | 备注 | 是否必填 |
---|---|---|---|---|
bucketName | 桶名称 | string | 是 | |
objectKey | 目标存储路径 | string | 是 |
出参:
字段 | 说明 | 类型 | 备注 | 是否必填 |
---|---|---|---|---|
字符串流 | string | 是 |
public String streamDownload(String bucketName,String objectName){
String content="";
OSS ossClient = new OSSClientBuilder().build(endpoint,accessKeyId,accessKeySecret);
try {
OSSObject ossObject = ossClient.getObject(bucketName,objectName);
BufferedReader bufferedReader = new BufferedReader(new InputStreamReader(ossObject.getObjectContent()));
while (true){
String line = bufferedReader.readLine();
if(line==null) break;
System.out.println("\n"+line);
content = content + line;
}
bufferedReader.close();
} catch (IOException e) {
e.printStackTrace();
return "false";
}
ossClient.shutdown();
System.out.println(content);
return content;
本地下载
该方法用于将存储空间内的文件下载到指定的本地路径。
入参