Windows Azure的:如何在一个blob容器创建子目录
-
26-09-2019 - |
题
如何在团块容器创建子目录
例如
在我的团块容器 http://veda.blob.core.windows.net/document /
如果我存储一些文件将是
现在,如何创建子目录
所以,我可以存储文件
解决方案
要添加到什么埃贡说,简单地创建您的blob名为“文件夹/的1.txt”,它会工作。无需创建一个目录。
其他提示
有实际上只是容器的单层。您几乎可以创建一个“文件系统”之类的分层存储,但在现实中一切将在1层,所述容器在其中是
有关创建一个虚拟的“文件系统”之类的存储,你可以有包含BLOB名称的“/”,这样你可以做任何你喜欢与你存储的方式。此外,伟大的事情是,你可以在一个虚拟水平斑点搜索,通过给部分字符串,由“/”。
这些两件事情,加入一个“/”到的路径和搜索部分字符串,一起创建一个虚拟的“文件系统”存储。
有是@ afr0询问如何滤波器上的文件夹的注释..
有是使用GetDirectoryReference
或通过容器斑点循环和检查的类型的两种方式。下面的代码是在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
如果您使用微软Azure存储资源管理器,有一个“新建文件夹”按钮,允许您创建夹在容器中。 这实际上是一个虚拟文件夹:
如@Egon如上所述,存在在BLOB存储没有真正的文件夹管理。
您可以使用实现“/”的文件名的文件系统的某些功能,但是这有很大的局限性(例如,如果你需要重命名“文件夹”发生什么?)。
作为一般规则,我会保持我的文件的尽可能平坦在一个容器中,并有我的应用程序管理我想要的任何结构暴露给最终用户(例如管理一个嵌套的文件夹结构的在我的数据库下,必须为每个文件中的记录,使用容器名和文件名)引用BLOB。
您不必创建子目录。刚刚创建BLOB容器和使用文件名等的可变的文件名强>如下代码:
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
下面就是我如何做到这一点在CoffeeScript中对Node.js的:
blobService.createBlockBlobFromText 'containerName', (path + '$$$.$$$'), '', (err, result)->
if err
console.log 'failed to create path', err
else
console.log 'created path', path, result
而得到了类似的问题,试图Azure的样品的第一无服务器-应用。结果 下面是我如何解决由$网前除去\的信息。
请注意:同时使静态的网站$ Web容器自动创建。 从未见过$根容器的任何地方。
//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