转换List< string>到字节数组的行使用c#

本文关键字:数组 到字节 List string 转换 | 更新日期: 2023-09-27 18:18:11

我想将字符串列表转换为字节数组以存储在sql表中,然后下载该文件。

在下面的代码中,我只关注转换部分。

List<string> Items = new List<string>();
Items.Add("1 - Test 1");
Items.Add("2 - Test 2");
Items.Add("3 - Test 3");
byte[] dataAsBytes = Items.SelectMany(s => System.Text.Encoding.UTF8.GetBytes(s))
                          .ToArray();

现在,当我把它下载为txt文件时,输出是:

1 - Test12 - Test 23 - Test 3

我如何改变我的代码,以获得下载文件中List<string>的每一行如下所示的输出:

1 - Test 1
2 - Test 2
3 - Test 3

转换List< string>到字节数组的行使用c#

您可以在查询中添加换行符。实际上是在每个字符之间添加一个换行字节。

byte[] dataAsBytes = Items.SelectMany(s =>
System.Text.Encoding.UTF8.GetBytes(s + Environment.NewLine)).ToArray();

您可以连接新行字符串:

string fulltext = String.Join(Environment.NewLine, Items);
byte[] dataAsBytes = System.Text.Encoding.UTF8.GetBytes(fulltext);

试试这个:

byte[] dataAsBytes = Items.SelectMany(s => 
           System.Text.Encoding.UTF8.GetBytes(s + Environment.NewLine)).ToArray();