почему byte [] не возвращает строку и не работает должным образом

У меня есть этот код:

Int32 i1 = 14000000;
byte[] b = BitConverter.GetBytes(i1);
string s = System.Text.Encoding.UTF8.GetString(b);
byte[] b2 = System.Text.Encoding.UTF8.GetBytes(s);
Int32 i2 = BitConverter.ToInt32(b2,0);;

i2 невероятно похож на -272777233. Почему это не входное значение? (14000000)

РЕДАКТИРОВАТЬ: то, что я пытаюсь сделать, это добавить его в другую строку, которую я затем пишу в файл, используя WriteAllText

Ответы на вопрос(4)

Ваш ответ на вопрос