В этой функции преобразования
public static byte[] GetBytes(string str)
{
byte[] bytes = new byte[str.Length * sizeof(char)];
System.Buffer.BlockCopy(str.ToCharArray(), 0, bytes, 0, bytes.Length);
return bytes;
}
byte[] test = GetBytes("abc");
Результирующий массив содержит нулевой символ
test = [97, 0, 98, 0, 99, 0]
И когда мы конвертируем байт [] обратно в строку, результат
string test = "a b c "
Как это сделать, чтобы он не создавал эти нули