ADLS .NET SDK提供了一些用于阅读和创建文本文件的好例子。这使用StreamReader,这不应该与二进制文件一起使用。我尝试使用BinaryReader但是没有成功。
https://docs.microsoft.com/en-us/azure/data-lake-store/data-lake-store-data-operations-net-sdk
//Read file contents
using (var readStream = new StreamReader(client.GetReadStream(fileName)))
{
string line;
while ((line = readStream.ReadLine()) != null)
{
Console.WriteLine(line);
}
}
.NET SDK可以创建/读取二进制文件吗?如果是这样,有没有这样做的例子?
答案 0 :(得分:1)
.NET SDK可以创建/读取二进制文件吗?如果是这样,有没有这样做的例子?
简短回答是,请参考以下演示代码。
创建二进制文件
AdlsClient adlsClient = AdlsClient.CreateClient($"{datalakeAccount}.azuredatalakestore.net", clientCreds);
using (var stream = adlsClient.CreateFile("file name", IfExists.Overwrite))
{
byte[] textByteArray = File.ReadAllBytes(@"local file path");
stream.Write(textByteArray, 0, textByteArray.Length);
}
读取二进制文件并写入本地文件
using (var filesream = adlsClient.GetReadStream("1.png"))
{
MemoryStream memorystream = new MemoryStream();
filesream.CopyTo(memorystream);
memorystream.Position = 0;
File.WriteAllBytes(@"filename", memorystream.ToArray());
}