Если файл ASCII, то каждый байт является кодом ASCII. Напечатать значение байта, скажем, для метки, так же просто, как это.
Если вы прочитали свой файл в byte[] file;
label1.Text = file[1].ToString();
Чтобы изменить вторую букву на A:
file[1] = (byte)'A';
или
file[1] = (byte)(int)'A';
Я не уверен, у меня нет C # на моем Mac для тестирования.
А если серьезно, если это текстовый файл, лучше читать его как текст, а не как byte[]
. И вы, вероятно, захотите манипулировать им, используя StringBuilder
Во-первых, читать как строку :
// Read the file as one string.
System.IO.StreamReader myFile =
new System.IO.StreamReader("c:\\test.txt");
string myString = myFile.ReadToEnd();
myFile.Close();
И это будет работать, если файл также является Unicode.
Затем вы можете получить значения Unicode (которые для большинства латинских символов совпадают со значением ASCII) примерно так: int value = (int)myString[5];
или около того.
Затем вы можете записать обратно в файл следующим образом:
System.IO.File.WriteAllText("c:\\test.txt", myString);
Если вы собираетесь делать серьезные изменения в тексте, вы должны использовать StringBuilder , в противном случае нормальные строковые операции будут в порядке.