我有一个要转换为字节的字符串(正确使用 encoding.getbytes() 函数),然后将转换产生的字节添加到列表中。
我怎样才能做到这一点?我考虑过做一个 for 并转换字符串中的每个字符并将其一个一个添加到列表中,但我想知道是否有更有效的方法来执行此操作。
class Program
{
static void Main(string[] args)
{
String str = "Kiran Bheemarti";
List<byte> bytes = Encoding.ASCII.GetBytes(str).ToList();
Console.Read();
}
}
您不能将 GetBytes 数组转换为列表吗?
List<byte> byteList = Encoding.Default.GetBytes(inputString).ToList();
或者将数组传递给 List 的构造函数:
List<byte> byteList = new List<Byte>(Encoding.ASCII.GetBytes(str));
循环是不必要的,你可以从字符串中获取字节数组,然后调用AddRange()
List 的方法将它们添加到列表中。
List<byte> byteList = new List<byte>();
foreach (var currentString in stringCollection)
{
var bytes = Encoding.Unicode.GetBytes(currentString);
byteList.AddRange(bytes);
}
如果你有一个字节格式的字符串列表,你可以应用它。
var stringByte = new List<string>();
var sr = stringByte.ConvertAll(c => Encoding.Default.GetBytes(c))).ToList();