[英]How to get date modified of a file in cloud files?
如何獲取雲文件中文件的日期修改?
我正在使用來自雲文件(而不是機架空間nu get軟件包)的.net SDK。
我可以獲取文件列表並調用GetStorageItemInformation大小,但是我想知道何時將文件放入雲文件。 如果我使用Cloudberry Explorer應用程序,則會看到其中的信息。
它在.net SDK中嗎?在哪里?
遍歷容器中的文件時,可以使用OpenStack.NET的ContainerObject.LastModified。 這是一個控制台應用程序,該應用程序列出了區域中的所有容器及其文件,以及上次修改的時間戳。
using System;
using net.openstack.Core.Domain;
using net.openstack.Providers.Rackspace;
namespace CloudFilesDateModified
{
class Program
{
static void Main(string[] args)
{
const string region = "DFW";
var identity = new CloudIdentity { Username = "username", APIKey = "apikey" };
var cloudfiles = new CloudFilesProvider(identity);
foreach (Container container in cloudfiles.ListContainers(region:region))
{
Console.WriteLine($"Container: {container.Name}");
foreach (ContainerObject file in cloudfiles.ListObjects(container.Name, region: region))
{
Console.WriteLine($"\t{file.Name} - {file.LastModified}");
}
}
Console.ReadLine();
}
}
}
以下是一些示例輸出
Container: test
foobar - 10/12/2015 2:00:26 PM -06:00
foobar/file.png - 11/6/2015 7:34:42 PM -06:00
foobar/index.html - 11/6/2015 7:34:31 PM -06:00
如果您的容器中有10,000個以上的文件,則需要使用分頁參數來遍歷所有文件。 在下面的示例中,我一次翻閱結果100。
foreach (Container container in cloudfiles.ListContainers(region: region))
{
Console.WriteLine($"Container: {container.Name}");
int limit = 100;
string lastFileName = null;
IEnumerable<ContainerObject> results;
do
{
results = cloudfiles.ListObjects(container.Name, region: region, limit: limit, marker: lastFileName);
foreach (ContainerObject file in results)
{
Console.WriteLine($"\t{file.Name} - {file.LastModified}");
lastFileName = file.Name;
}
} while (results.Any());
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.