如何在Blob容器中创建子目录
例如,
在我的Blob容器中http://veda.blob.core.windows.net/document/
如果我存储一些文件,它将是
现在,如何创建子目录
这样我就可以存储文件
如何在Blob容器中创建子目录
例如,
在我的Blob容器中http://veda.blob.core.windows.net/document/
如果我存储一些文件,它将是
现在,如何创建子目录
这样我就可以存储文件
Answers:
要添加Egon所说的内容,只需创建一个名为“ folder / 1.txt”的blob,它就会起作用。无需创建目录。
@ afr0发表评论,询问如何过滤文件夹。
使用GetDirectoryReference
或循环遍历容器blob和检查类型有两种方法。下面的代码在C#中
CloudBlobContainer container = blobClient.GetContainerReference("photos");
//Method 1. grab a folder reference directly from the container
CloudBlobDirectory folder = container.GetDirectoryReference("directoryName");
//Method 2. Loop over container and grab folders.
foreach (IListBlobItem item in container.ListBlobs(null, false))
{
if (item.GetType() == typeof(CloudBlobDirectory))
{
// we know this is a sub directory now
CloudBlobDirectory subFolder = (CloudBlobDirectory)item;
Console.WriteLine("Directory: {0}", subFolder.Uri);
}
}
请阅读以下内容以获取更深入的了解:http : //www.codeproject.com/Articles/297052/Azure-Storage-Blobs-Service-Working-with-Directori
如果使用Microsoft Azure存储资源管理器,则有一个“新建文件夹”按钮,可用于在容器中创建文件夹。这实际上是一个虚拟文件夹:
您不需要创建子目录。只需创建blob容器并使用文件名(如变量filename),如下代码:
string filename = "document/tech/user-guide.pdf";
CloudStorageAccount cloudStorageAccount = CloudStorageAccount.Parse(ConnectionString);
CloudBlockBlob blob = cloudBlobContainer.GetBlockBlobReference(filename);
blob.StreamWriteSizeInBytes = 20 * 1024;
blob.UploadFromStream(fileStream); // fileStream is System.IO.Stream
尝试Azure Sample first-serverless-app时遇到类似问题。
这是我如何通过删除$ web前面的\解决的信息。
注意:$ web容器是在启用静态网站时自动创建的。从未在任何地方看到$ root容器。
//getting Invalid URI error while following tutorial as-is
az storage blob upload-batch -s . -d \$web --account-name firststgaccount01
//Remove "\" @destination param
az storage blob upload-batch -s . -d $web --account-name firststgaccount01
这是我在Node.JS上的CoffeeScript中执行的操作:
blobService.createBlockBlobFromText 'containerName', (path + '$$$.$$$'), '', (err, result)->
if err
console.log 'failed to create path', err
else
console.log 'created path', path, result
C#