2

我有一个要转换为字节的字符串(正确使用 encoding.getbytes() 函数),然后将转换产生的字节添加到列表中。

我怎样才能做到这一点?我考虑过做一个 for 并转换字符串中的每个字符并将其一个一个添加到列表中,但我想知道是否有更有效的方法来执行此操作。

4

4 回答 4

2
class Program
{
    static void Main(string[] args)
    {
        String str = "Kiran Bheemarti";

        List<byte> bytes = Encoding.ASCII.GetBytes(str).ToList();

        Console.Read();
    }
}
于 2013-02-16T00:58:09.453 回答
1

您不能将 GetBytes 数组转换为列表吗?

List<byte> byteList = Encoding.Default.GetBytes(inputString).ToList();

或者将数组传递给 List 的构造函数:

List<byte> byteList = new List<Byte>(Encoding.ASCII.GetBytes(str));
于 2013-02-16T00:59:12.327 回答
0

循环是不必要的,你可以从字符串中获取字节数组,然后调用AddRange()List 的方法将它们添加到列表中。

List<byte> byteList = new List<byte>();  

foreach (var currentString in stringCollection)
{                
    var bytes = Encoding.Unicode.GetBytes(currentString);
    byteList.AddRange(bytes);
}
于 2013-02-16T00:59:19.813 回答
0

如果你有一个字节格式的字符串列表,你可以应用它。

var stringByte = new List<string>();

var sr = stringByte.ConvertAll(c => Encoding.Default.GetBytes(c))).ToList();
于 2013-02-16T01:05:54.480 回答