Azure BlobClient downloadToFile() 抛出 java.nio.file.NoSuchFileException
Posted
技术标签:
【中文标题】Azure BlobClient downloadToFile() 抛出 java.nio.file.NoSuchFileException【英文标题】:Azure BlobClient downloadToFile() throws java.nio.file.NoSuchFileException 【发布时间】:2021-11-18 01:00:24 【问题描述】:正如标题所说,我在尝试使用 downloadToFile 方法时遇到了 java.nio.file.NoSuchFileException。我读了一些文档,它说这种方法的工作方式是,如果文件存在,它将抛出一个 FileAlradyExistsException,当我手动创建文件时发生在我身上。但是我觉得奇怪的是,当文件不存在时,它会抛出相反的结果......
String localPath = "/Download/"; // this is the path within my server
BlobClient blobClient;
for (int i = 0; i < files.length; i++)
blobClient = container.getBlobClient(files[i]);
blobClient.downloadToFile(localPath + files[i]);
System.out.println("Done");
【问题讨论】:
***.com/questions/2642919/… 这个有用吗 不幸的是,它不会检查 blob 是否存在。就我而言,我想在我指定的文件夹中创建文件。 您的问题到底是什么?您想下载文件或上传它。在 blob 存储中根本没有文件夹。如果要上传文件,为什么要使用下载方法 还是不理想,等我做好了再提供! 您需要确保“下载”文件夹中存在“User_Manual”文件夹。 SDK 不会为您创建此文件夹。 【参考方案1】:正如@Gaurav Mantri 提到的,文件夹本身必须存在。所以我必须构建所有文件夹,现在文件可以完美加载。
【讨论】:
以上是关于Azure BlobClient downloadToFile() 抛出 java.nio.file.NoSuchFileException的主要内容,如果未能解决你的问题,请参考以下文章
C# Azure BlobClient 覆盖时在上传时设置 AccessTier
Azure BlobClient downloadToFile() 抛出 java.nio.file.NoSuchFileException
Azure Blob Storage SDK for .NET BlobClient.UploadAsync 总是抛出异常,但总是上传文件