阿里云OSS 获取目录下所有文件
- public class AliyunHandle
- {
- public static string accessKeyId = "a1uI5xxxxxxxxxrP4H";
- public static string accessKeySecret = "9JDdggMdT2cxxxxxxxxxxxxxxx5VaE9z";
- public static string endpoint = "oss-cn-qingdao.aliyuncs.com";
- public static string bucket = "testoss";
- OssClient client = new OssClient(endpoint, accessKeyId, accessKeySecret);
- public void Get()
- {
- var flag = true;
- string maker = string.Empty;
- var dayTime = 24 * 60 * 60 * 1000;
- int k = 0;
- do
- {
- var listObjectsRequest = new ListObjectsRequest(bucket);
- listObjectsRequest.Prefix = "test/47383/"; //指定下一级文件
- listObjectsRequest.Marker = maker; //获取下一页的起始点,它的下一项
- listObjectsRequest.MaxKeys = 100;//设置分页的页容量
- listObjectsRequest.Delimiter = "/";//跳出递归循环,只去指定目录下的文件。使用它时 Prefix文件路径要以“/”结尾
- var result = client.ListObjects(listObjectsRequest);
- Console.WriteLine("List objects succeeded");
- foreach (var summary in result.ObjectSummaries)
- {
- Console.WriteLine($"{k}File name:{summary.Key}\r\n\r\n");
- TimeSpan timepsan = DateTime.Now - summary.LastModified;//最后修改时间
- //时间超过一天就删除
- if (timepsan.TotalMilliseconds > dayTime)
- {
- //删除oss文件
- client.DeleteObject(bucket, summary.Key);
- Console.WriteLine($"删除{summary.Key}");
- }
- k++;
- }
- maker = result.NextMarker;
- flag = result.IsTruncated;//全部执行完后,为false
- } while (flag);
- }
- }
版权声明:本文为xiaoyaodijun原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。