| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > C/C++: Общие вопросы > Чтение из файла |
| Автор: crank777 16.12.2006, 22:24 |
| народ кто поможет с таким вопросом. Как мне сделать такую штуку: мне нужно прочитать из файла 9-ть символов, дальше мне надо просто перейдти на один символ вперёд и прочитать ещё 9-ть символов и перейти на начало следующей строки. сос следующеёй строкой сделать тоже самое и так далие пока не конец файла. подскажите хотябы примерный алгоритм и какими функциями лучше работать с файлом. |
| Автор: Xenon 16.12.2006, 22:57 |
| Ну шагать по файлу можно при помощи file.seekg() А вообще давай наброски, если что-то есть. Если нет - в центр помощи. |
| Автор: crank777 17.12.2006, 01:45 |
| ну особых набросков нету. а вот пытался сделать это при помощи ф-ии fread(); - но чёт неочень, слишком много лишнего получается на выходе... |
| Автор: apook 17.12.2006, 02:04 |
| fread читает всюстроку Тебе нужен fgetc; |
| Автор: crank777 17.12.2006, 02:14 |
| панял, и делать цикл на то количество повторень сколько мне надосимволов |
| Автор: Rockie 17.12.2006, 05:05 | ||
хорошо слово рифмуется
|
| Автор: Rickert 17.12.2006, 08:09 |
| fread() fseek() |
| Автор: GIK 17.12.2006, 10:35 | ||
|
| Автор: witex 17.12.2006, 13:03 | ||
Так я думаю удобнее будет!
З.Ы. Если есть ошибки, не бейте. Не проверял! |
| Автор: Anikmar 17.12.2006, 13:10 |
| Этот код не будет начинать все заново со следующей строки как требуется в задании |
| Автор: witex 17.12.2006, 13:15 |
| ну всё зависит в каком формате файл! |
| Автор: Anikmar 17.12.2006, 13:21 |
| Ну, если мои телепатические способности не подводят - то фидимо файл из строк, в каждой из которых нужно считать куски по 9 симовлов и так до конца строки... Видимо где-то так (если автор темы, не обяснит подробнее). Я не понял, например, куда девать эти 9 символов? Записывать в массив строк или формировать одну строку? Лично я бы, наверное сяитывал по строчно, а из строки выдергивал уже нужные куски, хотя можно и напрямую из файла. Хотя файл может быть и не текстовым. Автора! Автора! |
| Автор: witex 17.12.2006, 13:26 |
| да не понятно, мож там в строке только 20символов, 9 читаем, 1 промежуточный типо пробела, опять читаем 9 символов, и символ новой строки. Anikmar а на счёт того что взять всю строку, и потом с нейработать... то всяко удобнее! |
| Автор: Oleg_Ci 17.12.2006, 13:45 | ||
| Строка формата грамотная для fscanf нужна Я изобрёл, только правильная она или нет я точно незнаю, но работает (на MS2003). -> fscanf(... "%10c%9c%*[^\n]%*[\n]" ... );
|
| Автор: witex 17.12.2006, 13:53 |
| Интересная вариация... заитерисовало даже очень! Работает и на VC6. Надо по лудше будет разобраться в форматах.... А то сам постоянно, cin, cout использую... тумаю автору самая тема будет эта прога! |
| Автор: Anikmar 17.12.2006, 14:45 |
| Если количество блоков по 9 известно - то самое то, а вот если нет - то я не уверен что сработает. В строке формата прописывается точное количество аргументов. |