假设我每天在我的Blob存储中生成几个json
文件,我想要做的是获取任何目录中最新修改的文件。因此,我的Blob中会有类似于以下内容:
2016/01/02/test.json
2016/01/02/test2.json
2016/02/03/test.json
我想获取2016/02/03/test.json
。所以一种方法是获取文件的完整路径,并进行正则表达式检查以找到最新创建的目录,但如果每个目录中有多个json
文件,则此方法无效。是否有类似于File.GetLastWriteTime
的方法可获取最近修改的文件?
我正在使用以下代码获取所有文件:
public static CloudBlobContainer GetBlobContainer(string accountName, string accountKey, string containerName)
{
CloudStorageAccount storageAccount = new CloudStorageAccount(new StorageCredentials(accountName, accountKey), true);
// blob client
CloudBlobClient blobClient = storageAccount.CreateCloudBlobClient();
// container
CloudBlobContainer blobContainer = blobClient.GetContainerReference(containerName);
return blobContainer;
}
public static IEnumerable<IListBlobItem> GetBlobItems(CloudBlobContainer container)
{
IEnumerable<IListBlobItem> items = container.ListBlobs(useFlatBlobListing: true);
return items;
}
public static List<string> GetAllBlobFiles(IEnumerable<IListBlobItem> blobs)
{
var listOfFileNames = new List<string>();
foreach (var blob in blobs)
{
var blobFileName = blob.Uri.Segments.Last();
listOfFileNames.Add(blobFileName);
}
return listOfFileNames;
}