gpt4 book ai didi

c# - 在内存中创建文本文件,然后将其上传到 Azure Blob 存储

转载 作者:行者123 更新时间:2023-12-02 06:17:44 27 4
gpt4 key购买 nike

现在,我正在库的帮助下在内存中创建 Parquet 文件,并将其上传到 Azure Blob 存储。不过,这次我想要更简单的东西,即只是一个文本文件,用于将 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);
}
}

有没有更简单的方法?如果没有也没关系

最佳答案

如果直接使用UploadAsyncUpload方法会更简单一些。

例如:

        //other code
var blobClient4 = containerClient.GetBlockBlobClient("xxx");

using (var ms = new MemoryStream())
{
StreamWriter writer = new StreamWriter(ms);
writer.Write(RequestTime.ToString());
writer.Flush();
ms.Position = 0;
await blobClient4.UploadAsync(ms);
}

关于c# - 在内存中创建文本文件,然后将其上传到 Azure Blob 存储,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/65398655/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com