tencent cloud

All product documents
Cloud Object Storage
Deleting Objects
Last updated: 2024-02-02 14:36:36
Deleting Objects
Last updated: 2024-02-02 14:36:36

Overview

This document provides an overview of APIs and SDK code samples related to object deletion.
API
Operation
Description
Deleting an object
Deletes an object from a bucket.
Deleting multiple objects
Deletes multiple objects from a bucket.

Deleting a Single Object

Description

This API (DELETE Object) is used to delete a specified object.

Sample code

[//]: # ".cssg-snippet-delete-object"
try
{
// Bucket name in the format of `BucketName-APPID`. You can get APPID by referring to https://console.cloud.tencent.com/developer.
string bucket = "examplebucket-1250000000";
string key = "exampleobject"; // Object key
DeleteObjectRequest request = new DeleteObjectRequest(bucket, key);
// Execute the request
DeleteObjectResult result = cosXml.DeleteObject(request);
// Request succeeded
Console.WriteLine(result.GetResultInfo());
}
catch (COSXML.CosException.CosClientException clientEx)
{
// Request failed
Console.WriteLine("CosClientException: " + clientEx);
}
catch (COSXML.CosException.CosServerException serverEx)
{
// Request failed
Console.WriteLine("CosServerException: " + serverEx.GetInfo());
}
Note:
For the complete sample, go to GitHub.

Deleting Multiple Objects

Description

The API (DELETE Multiple Objects) is used to delete multiple objects.

Sample code

[//]: # ".cssg-snippet-delete-multi-object"
try
{
// Bucket name in the format of `BucketName-APPID`. You can get APPID by referring to https://console.cloud.tencent.com/developer.
string bucket = "examplebucket-1250000000";
DeleteMultiObjectRequest request = new DeleteMultiObjectRequest(bucket);
// Set the return result format
request.SetDeleteQuiet(false);
// Object key
string key = "exampleobject"; // Object key
List<string> objects = new List<string>();
objects.Add(key);
request.SetObjectKeys(objects);
// Execute the request
DeleteMultiObjectResult result = cosXml.DeleteMultiObjects(request);
// Request succeeded
Console.WriteLine(result.GetResultInfo());
}
catch (COSXML.CosException.CosClientException clientEx)
{
// Request failed
Console.WriteLine("CosClientException: " + clientEx);
}
catch (COSXML.CosException.CosServerException serverEx)
{
// Request failed
Console.WriteLine("CosServerException: " + serverEx.GetInfo());
}
Note:
For the complete sample, go to GitHub.

Deleting Objects with a Specified Prefix (Deleting a Folder)

Description

If you delete objects with a specified prefix, it will be like you delete a directory. COS does not have the concept of directories, but you can use slashes (/) as the delimiter to simulate directories. In COS, deleting a directory and the objects contained actually means deleting objects that have the same specified prefix. Currently, COS’s .NET SDK does not provide a standalone API to perform this operation. However, you can still do so with a combination of basic operations (query object list + batch delete objects).

Sample code

[//]: # ".cssg-snippet-delete-prefix"
try
{
String nextMarker = null;

// Request until there is no next page of data
do
{
// Bucket name in the format of `BucketName-APPID`. You can get APPID by referring to https://console.cloud.tencent.com/developer.
string bucket = "examplebucket-1250000000";
string prefix = "folder1/"; // Specify a prefix.
GetBucketRequest listRequest = new GetBucketRequest(bucket);
// Obtain all objects and subdirectories in folder1/.
listRequest.SetPrefix(prefix);
listRequest.SetMarker(nextMarker);
// Execute the list object request.
GetBucketResult listResult = cosXml.GetBucket(listRequest);
ListBucket info = listResult.listBucket;
// List objects
List<ListBucket.Contents> objects = info.contentsList;
// nextMarker for the next page
nextMarker = info.nextMarker;

DeleteMultiObjectRequest deleteRequest = new DeleteMultiObjectRequest(bucket);
// Set the return result format
deleteRequest.SetDeleteQuiet(false);
// List objects
List<string> deleteObjects = new List<string>();
foreach (var content in objects)
{
deleteObjects.Add(content.key);
}
deleteRequest.SetObjectKeys(deleteObjects);
// Execute the batch delete request.
DeleteMultiObjectResult deleteResult = cosXml.DeleteMultiObjects(deleteRequest);
// Print the request result.
Console.WriteLine(deleteResult.GetResultInfo());
} while (nextMarker != null);
}
catch (COSXML.CosException.CosClientException clientEx)
{
// Request failed
Console.WriteLine("CosClientException: " + clientEx);
}
catch (COSXML.CosException.CosServerException serverEx)
{
// Request failed
Console.WriteLine("CosServerException: " + serverEx.GetInfo());
}
Note:
For the complete sample, go to GitHub.
Was this page helpful?
You can also Contact Sales or Submit a Ticket for help.
Yes
No

Feedback

Contact Us

Contact our sales team or business advisors to help your business.

Technical Support

Open a ticket if you're looking for further assistance. Our Ticket is 7x24 avaliable.

7x24 Phone Support