![]() |
Модераторы: Partizan, gambit |
![]() ![]() ![]() |
|
akaineco |
|
|||
![]() Новичок Профиль Группа: Участник Сообщений: 12 Регистрация: 7.9.2004 Репутация: нет Всего: нет |
Запись в файл, чтение из файла.
В MSDN по этому вопросу мне удалось найти только это:
поковырямшись в инете нашел еще кучу классов, и основательно в них запутался. Хотелось бы проконсультироваться, что мне лучше юзать для решения следующей задачи: I. можно работать с файлом последовательного доступа, тогда 1. я должен иметь возможность считать символ с определенным порядковым номером. Только один символ. Считать в оперативку весь файл и затем найти нужный символ методом тотального перебора — такое некатит. 2. Должна быть возможность записи символа в место, определенное порядковым номером этого символа. Если на этом месте уже есть символ, то он должен быть перезаписан. II. Если ничего подобного нет при работе с файлами последовательного доступа, то придется воспользоваться файлом произвольного доступа, но никакой информации по работе с файлами произвольного доступа я пока не нашел. Не хотелось бы усложнять программку базой данных. III. Еще хотелось бы выяснить, можно ли записать в файл не символ или байт, а один бит, т. е. единичку или нолик? |
|||
|
||||
Domestic Cat |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 5452 Регистрация: 3.5.2004 Где: Dallas, US Репутация: 9 Всего: 172 |
Посмотри FileStream.
-------------------- |
|||
|
||||
[Last]Wizard |
|
||||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 113 Регистрация: 20.7.2004 Где: Минск, Беларусь Репутация: 4 Всего: 10 |
Это точно ![]() Вот тебе пример:
Насчет побитовой записи ничего не знаю, но в принципе можно реализовать через чтение и запись байтов. |
||||
|
|||||
akaineco |
|
||||||
![]() Новичок Профиль Группа: Участник Сообщений: 12 Регистрация: 7.9.2004 Репутация: нет Всего: нет |
Через FileStream мы читаем байты, т. е. фактически числа.
А как насчет букв и символов? Есть еще BinaryWriter BinaryReader.
записываем без проблем, а куда при чтении у fse2 метод seek девался? - Слоники снюхали? приходиться читать попорядку одного за другим. Или может следует считать сначала быйт, а затем есть какой-то способ перевести его в конкретный символ ?
да, я тоже об этом думал. |
||||||
|
|||||||
Gazon |
|
||||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 128 Регистрация: 9.1.2005 Репутация: 3 Всего: 8 |
Используй StreamReader.
Это сообщение отредактировал(а) Gazon - 25.1.2005, 05:27 --------------------
Чем больше узнаешь, тем больше не знаешь, но до истины всегда можно добраться. |
||||
|
|||||
akaineco |
|
||||||||
![]() Новичок Профиль Группа: Участник Сообщений: 12 Регистрация: 7.9.2004 Репутация: нет Всего: нет |
че-то не Компилируется.
но мне нужно только символ считать, а ReadLine читает строку, причем с начала файла, а не с произвольного места. Есть еще метод read, который читает файл в массив. Если массив сделать величиной в один символ, то можно считать символ, но не с произвольной позиции:
метод seek отсутствует. А при записи методом write происходит полная перезапись всего файла. Старые даные не сохраняются, чего мне совсем не надо:
А как же посредством StreamReader, считать один символ с произвольной позиции в файле? |
||||||||
|
|||||||||
akaineco |
|
|||
![]() Новичок Профиль Группа: Участник Сообщений: 12 Регистрация: 7.9.2004 Репутация: нет Всего: нет |
Ну ладно. На самом деле того, что уже есть, мне вполне хватит. Ситуация более или менее прояснилась. FileStream мне больше всего подойдет. Спасибо всем за участие и посильную помощь.
![]() |
|||
|
||||
![]() ![]() ![]() |
Прежде чем создать тему, посмотрите сюда: | |
|
Используйте теги [code=csharp][/code] для подсветки кода. Используйтe чекбокс "транслит" если у Вас нет русских шрифтов. Что делать если Вам помогли, но отблагодарить помощника плюсом в репутацию Вы не можете(не хватает сообщений)? Пишите сюда, или отправляйте репорт. Поставим :) Так же не забывайте отмечать свой вопрос решенным, если он таковым является :) Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, mr.DUDA, THandle. |
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | Общие вопросы по .NET и C# | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |