none
antirepeat RRS feed

  • Вопрос

  • Здравствуйте!

     

    В системе Borland C++ (возможно и VC) существует переменные

       _fmode=O_TEXT

       _fmode=O_BINARY

     

    Выбрав одну из них мы получаем, что считывание переменной из файла производится как текст, либо не как текст.

     

    В языке C# не существует таких переменных. Какие-то похожие переменные существуют, но я так и не понял, как с ними действовать.

    Не могли бы ли Вы подсказать, как тут быть?

     

    С уважением

    Александр Зубков

    20 марта 2015 г. 6:18

Ответы

  • После открытия файла и получения объекта Stream двоичные данные читаются из него используя метод Read().

    Для чтения "текста" создается класс StreamReader и используются егo методы (например ReadLine()) которые возвращают строки и символы. Таким образом отпадает необходимость преобразовывать байты в строки и символы используя кодировки, StreamReader делает это за вас.

    Что до упомянутых переменных то они являются преданием старины глубокой. На некоторых системах они меняют смысл некоторых спецсимволов, вот и все (вроде \0 может быть воспринят как конец файла).


    This posting is provided "AS IS" with no warranties, and confers no rights.

    20 марта 2015 г. 6:53
    Модератор

Все ответы

  • После открытия файла и получения объекта Stream двоичные данные читаются из него используя метод Read().

    Для чтения "текста" создается класс StreamReader и используются егo методы (например ReadLine()) которые возвращают строки и символы. Таким образом отпадает необходимость преобразовывать байты в строки и символы используя кодировки, StreamReader делает это за вас.

    Что до упомянутых переменных то они являются преданием старины глубокой. На некоторых системах они меняют смысл некоторых спецсимволов, вот и все (вроде \0 может быть воспринят как конец файла).


    This posting is provided "AS IS" with no warranties, and confers no rights.

    20 марта 2015 г. 6:53
    Модератор
  • Большое спасибо.
    20 марта 2015 г. 15:28