Неверная кодировка при выводе на консоль - C#
Формулировка задачи:
Добрый день.
Немножко не понятен момент в моем тренировочном коде.
using System; using System.IO; class demo { static void Main() { FileStream Test; try { Test = new FileStream("C:/Users/volkov.a/Desktop/test.txt", FileMode.OpenOrCreate, FileAccess.ReadWrite); } catch(FileNotFoundException) { Console.WriteLine("Исключение"); return; } byte[] array=new byte[]{1,2,3,4,5}; Test.Write(array, 0, 5); for (int i=0;i<array.Length;i++) Console.WriteLine((char)array[i]); } }
- Почему, если я убираю return из блока catch то получаю ошибку компиляции("Использование локальной переменной Test, которой не присвоено значение")?Ведь до блока catch в данном случае не доходит. А переменная инициализирована.
- Почему в создаваемом файле я получаю кракозябры, которые отличаются от вывода на консоль?
Решение задачи: «Неверная кодировка при выводе на консоль»
textual
Листинг программы
static string Example(int x) { if (x<0) return "х<0"; // если х<0, то метод завершится в этой строчке и вернет "x<0", дальше if'ы выполняться не будут if (x>0) return "х>0"; // если х>0, то метод завершится в этой строчке и вернет "x>0", последний if не выполнится if (x==0) return "х==0"; // если х==0, то метод завершится в этой строчке и вернет "x==0", все проверки будут пройдены }
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д