问题:
FCL中的许多方法接受由字符构成的byte[],而不是string。下面是其中的一些方法:
System.Diagnostics.EventLog.WriteEntry
System.IO.BinaryWriter.Write
System.IO.FileStream.Write
System.IO.FileStream.BeginWrite
System.IO.MemoryStream.Write
System.IO.MemoryStream.BeginWrite
System.Net.Sockets.Socket.Send
System.Net.Sockets.Socket.SendTo
System.Net.Sockets.Socket.BeginSend
System.Net.Sockets.Socket.BeginSendTo
System.Net.Sockets.NetworkStream.Write
System.Net.Sockets.NetworkStream.BeginWrite
System.Security.Cryptography.CryptoStream.Write
System.Security.Cryptography.CryptoStream.BeginWrite
在许多情况下,可能需要把一个string传入上述其中一个方法或者其他某个只接受byte[]的方法中。你需要采用一种方式把这个字符串分解成byte[].
解决方案:
要把一个string转换为ASCII值的byte[],可以使用ASCII Encoding类的GetBytes方法:
byte[] asciiCharacterArray = {128, 83, 111, 117, 114, 99