programing

바이트 배열을 문자열로 변환하는 방법

lovejava 2023. 5. 9. 21:59

바이트 배열을 문자열로 변환하는 방법

저는 두 개의 문자열로 바이트 배열을 만들었습니다.바이트 배열을 문자열로 변환하려면 어떻게 해야 합니까?

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);

변환하고 싶습니다.result실타래로를 사용하여 할 수 있습니다.BinaryReader하지만 나는 사용할 수 없습니다.BinaryReader(지원되지 않습니다.)

사용할 인코딩에 따라 다음을 수행합니다.

var str = System.Text.Encoding.Default.GetString(result);

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);

BlockCopy를 사용하면 인코딩을 처리하지 않고도 이 작업을 수행할 수 있습니다.

char[] chars = new char[bytes.Length / sizeof(char)];
System.Buffer.BlockCopy(bytes, 0, chars, 0, bytes.Length);
string str = new string(chars);

바이트[]를 문자열[]로 변환하려면 아래 줄을 사용하십시오.

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);

언급URL : https://stackoverflow.com/questions/11654562/how-to-convert-byte-array-to-string