【发布时间】:2021-09-15 19:49:24
【问题描述】:
我对 c# 流了解甚少。我正在尝试将 brotli 压缩的 json 上传到 azure 存储中。
private async Task UploadJSONAsync(BlobClient blob, object serializeObject, CancellationToken cancellationToken)
{
var json = JsonConvert.SerializeObject(serializeObject);
using (var sourceStream = new MemoryStream(Encoding.UTF8.GetBytes(json)))
using (var destStream = new MemoryStream())
using (var brotliStreamCompressor = new BrotliStream(destStream, CompressionLevel.Optimal, false))
{
sourceStream.CopyTo(brotliStreamCompressor);
//brotliStreamCompressor.Close(); // Closes the stream, can't read from a closed stream.
await blob.DeleteIfExistsAsync();
await blob.UploadAsync(destStream, cancellationToken);
//brotliStreamCompressor.Close(); // destStream has zero bytes
}
}
}
我确信我缺乏流知识会阻止它工作。
【问题讨论】:
-
您是否遇到了错误,如果是,是什么以及在哪里?
-
@MickyD 你没看到代码中的 cmets 吗?
-
我能看到的只是注释掉代码
标签: c# json azure-storage brotli