簡體   English   中英

使用C#.NET從Amazon AWS S3雲中獲取文件名且沒有擴展名的文件

[英]Getting file from Amazon AWS S3 cloud with file name without extension using C# .NET

我將文件存儲在Amazon S3雲中,並希望使用C#.NET來獲取它們。 如果我使用完整的文件名作為檢索文件的密鑰,則獲取文件沒有任何問題。

keyName = "myfile.jpg";
client.GetObject(new GetObjectRequest { BucketName = bucketName, Key = keyName });

現在,如果我不知道圖像的文件擴展名,可能是“ myfile.jpg”,“ myfile.png”或“ myfile.gif”。 我將“ myfile”作為唯一的信息。

一件事可以確保該文件將僅是圖像。

有什么方法可以僅通過文件名(“ myfile”)來獲取對象嗎? 還是在Amazon S3中,我們可以將文件的密鑰更改為“ myFile”或任何我們想要的名稱?

任何幫助,將不勝感激。

謝謝!

您有一個API來獲取文件名稱列表(S3密鑰),並且有另一個API來獲取文件(S3密鑰)。

此代碼為您提供了S3存儲桶中所有鍵(對象)的列表。

// Create a client
AmazonS3Client client = new AmazonS3Client();

// List all objects
ListObjectsRequest listRequest = new ListObjectsRequest
{
    BucketName = "SampleBucket",
};

ListObjectsResponse listResponse;
do
{
    // Get a list of objects
    listResponse = client.ListObjects(listRequest);
    foreach (S3Object obj in listResponse.S3Objects)
    {
        Console.WriteLine("Object - " + obj.Key);
        Console.WriteLine(" Size - " + obj.Size);
        Console.WriteLine(" LastModified - " + obj.LastModified);
        Console.WriteLine(" Storage class - " + obj.StorageClass);
    }

    // Set the marker property
    listRequest.Marker = listResponse.NextMarker;
} while (listResponse.IsTruncated);

取自http://docs.aws.amazon.com/sdkfornet/latest/apidocs/Index.html

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM