array - convertir string a byte[] c#
Cómo convertir la matriz de bytes a la cadena (5)
Dependiendo de la codificación que desee utilizar:
var str = System.Text.Encoding.Default.GetString(result);
Esta pregunta ya tiene una respuesta aquí:
- ¿Cómo convertir UTF-8 byte [] a cadena? 13 respuestas
He creado una matriz de bytes con dos cadenas. ¿Cómo convierto una matriz de bytes a cadenas?
var binWriter = new BinaryWriter(new MemoryStream());
binWriter.Write("value1");
binWriter.Write("value2");
binWriter.Seek(0, SeekOrigin.Begin);
byte[] result = reader.ReadBytes((int)binWriter.BaseStream.Length);
Quiero convertir el result
en cadenas. Puedo hacerlo usando BinaryReader
. Pero no puedo usar BinaryReader
(no es compatible).
Para convertir el byte [] en cadena [], simplemente use la línea de abajo.
byte[] fileData; // Some byte array
//Convert byte[] to string[]
var table = (Encoding.Default.GetString(
fileData,
0,
fileData.Length - 1)).Split(new string[] { "/r/n", "/r", "/n" },
StringSplitOptions.None);
Puedes hacerlo sin tratar con la codificación usando BlockCopy :
char[] chars = new char[bytes.Length / sizeof(char)];
System.Buffer.BlockCopy(bytes, 0, chars, 0, bytes.Length);
string str = new string(chars);
Suponiendo que está utilizando la codificación UTF-8:
string convert = "This is the string to be converted";
// From string to byte array
byte[] buffer = System.Text.Encoding.UTF8.GetBytes(convert);
// From byte array to string
string s = System.Text.Encoding.UTF8.GetString(buffer, 0, buffer.Length);
Una opción alternativa es:
string convert = "This is the string to be converted";
convert.CopyTo(0, buffer, 0, convert.length);
Ver String.CopyTo (MSDN).