【发布时间】:2021-03-31 13:32:28
【问题描述】:
现在我正在借助库在内存中创建 Parquet 文件,并将其上传到 Azure Blob storage。不过,这次我想要一些更简单的东西,即只需一个文本文件即可将DateTime.UtcNow 写入内存中的文本文件并上传到 Azure。
到目前为止我的代码:
BlobServiceClient BlobServiceClient = new BlobServiceClient("my_code");
var containerClient = BlobServiceClient.GetBlobContainerClient("my_container");
var blobClient = containerClient.GetBlockBlobClient($"path/to/specific/directory/file.parquet");
using (var outStream = await blobClient.OpenWriteAsync(true).ConfigureAwait(false))
using (ChoParquetWriter parser = new ChoParquetWriter(outStream))
{
parser.Write(data_list);
}
如果没有ChoParquetWriter,我如何在内存中创建文本文件,这是我正在使用的库的一部分?
更新:找到解决方案
using (var outStream = await blobClient4.OpenWriteAsync(true).ConfigureAwait(false))
{
byte[] bytes = null;
using (var ms = new MemoryStream())
{
TextWriter tw = new StreamWriter(ms);
tw.Write(RequestTime.ToString());
tw.Flush();
ms.Position = 0;
bytes = ms.ToArray();
ms.WriteTo(outStream);
}
}
有没有更简单的方法?如果不是这样也没关系
【问题讨论】:
-
试试
System.IO.TextWriter -
RequestTime有什么魔力?
标签: c# azure azure-blob-storage memorystream