有没有办法不通过CSV Helper生成文件?

ghhaqwfi  于 2022-12-15  发布在  其他
关注(0)|答案(1)|浏览(121)

如果有任何机会不生成系统中的csv文件?我不想把它存储在我的应用程序,我们可以生成它的smth飞行?作为回报,我想转换为base64的csv。

var path = Path.Combine(Directory.GetCurrentDirectory(), "test.csv");
    await using var writer = new StreamWriter(path);
    await using (var csv = new CsvWriter(writer, CultureInfo.InvariantCulture))
    {
        await csv.WriteRecordsAsync(list);
    }

    var bytes = await File.ReadAllBytesAsync(path);
    return Convert.ToBase64String(bytes);
jdzmm42g

jdzmm42g1#

StreamWriter可以写入任何流,包括MemoryStream

using var ms=new MemoryStream();
using var writer = new StreamWriter(ms);

...
return Convert.ToBase64String(ms.GetBuffer());

CSV文件是文本文件,所以转换成BASE64不是很有用。StreamWriter默认使用UTF8编码,所以它已经可以处理任何语言。
最好将文本保存为 text,特别是当它要存储在数据库的文本字段中时,这可以通过使用StreamReader阅读字节来实现

using var reader=new StreamReader(ms);
ms.Position=0;
var csvText=reader.ReadToEnd();

变量csv文本

相关问题