OSS判断文件是否存在

          try
            {

                 OssClient handleclient = new OssClient(m_endpoint, m_id, m_key);
                // 判断文件是否存在。filePath文件路径
                bool exist = handleclient.DoesObjectExist(m_bucketName,filePath);
                if (exist)
                    return Request.CreateResponse(new {Success=true });
                else
                    return Request.CreateResponse(new { Success = false,ErrMes="文件不存在" });

            }
            catch (Exception ex)
            {               
                return Request.CreateResponse(new { Success = false, ErrMes = "异常:"+ex.Message });
            }

以下是Java实现上传大文件OSS的步骤和代码示例: 1. 引入OSS SDK依赖 在Maven项目中,可以在pom.xml文件中添加以下依赖: ```xml <dependency> <groupId>com.aliyun.oss</groupId> <artifactId>aliyun-sdk-oss</artifactId> <version>2.8.3</version> </dependency> ``` 2. 初始化OSSClient ```java String endpoint = "yourEndpoint"; String accessKeyId = "yourAccessKeyId"; String accessKeySecret = "yourAccessKeySecret"; String bucketName = "yourBucketName"; // 创建OSSClient实例 OSS ossClient = new OSSClientBuilder().build(endpoint, accessKeyId, accessKeySecret); // 判断Bucket是否存在,不存在则创建 if (!ossClient.doesBucketExist(bucketName)) { ossClient.createBucket(bucketName); } ``` 3. 分片上传文件 ```java String objectName = "yourObjectName"; // 上传到OSS文件名 String filePath = "yourFilePath"; // 本地文件路径 // 初始化分片上传 InitiateMultipartUploadRequest request = new InitiateMultipartUploadRequest(bucketName, objectName); InitiateMultipartUploadResult result = ossClient.initiateMultipartUpload(request); String uploadId = result.getUploadId(); // 设置分片大小 final long partSize = 1024 * 1024 * 1; // 1MB // 计算分片数目 File file = new File(filePath); long fileLength = file.length(); int partCount = (int) (fileLength / partSize); if (fileLength % partSize != 0) { partCount++; } // 上传分片 List<PartETag> partETags = new ArrayList<>(); for (int i = 0; i < partCount; i++) { long startPos = i * partSize; long curPartSize = (i + 1 == partCount) ? (fileLength - startPos) : partSize; FileInputStream fis = new FileInputStream(file); fis.skip(startPos); UploadPartRequest uploadPartRequest = new UploadPartRequest(); uploadPartRequest.setBucketName(bucketName); uploadPartRequest.setKey(objectName); uploadPartRequest.setUploadId(uploadId); uploadPartRequest.setInputStream(fis); uploadPartRequest.setPartSize(curPartSize); uploadPartRequest.setPartNumber(i + 1); UploadPartResult uploadPartResult = ossClient.uploadPart(uploadPartRequest); partETags.add(uploadPartResult.getPartETag()); fis.close(); } // 完成分片上传 CompleteMultipartUploadRequest completeMultipartUploadRequest = new CompleteMultipartUploadRequest(bucketName, objectName, uploadId, partETags); ossClient.completeMultipartUpload(completeMultipartUploadRequest); ``` 4. 关闭OSSClient ```java ossClient.shutdown(); ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值