|
Nereis
|
|
Посимвольное чтение файла28.09.2008, 01:48. Показов 11020. Ответов 5
Метки нет (Все метки)
Доброе время суток!
Такая проблема встала передо мной: Есть файл вида: 0012345 01123412345678 021230201200805012008 02321 17022008 021321504200817042008 01432187654321 023330208200706082007 01444488888888 ,где, к примеру, первых два символа строки определяют тип дальнейшей информации. Т.е. если первых два символа 00, то это заголовочная информация и дальше следует 5тизначный номер, к примеру договора. Если 01, то после следует 4 символа id компании, и еще 8 символов - номер счета компании. А если 02, то следующие 3 символа будут означать номер совершенной операции и после них еще дата совершения и дата утверждения. Структура файла имеется примерно такая. Вопрос: как прочитать такой файл? Просто здесь нет никаких разделителей. И то как читать строчку становится ясно только после прочтения первых двух символов. Не поможет ли кто-нибудь примером или ссылкой на статью, где разбирается подобное построчно-символьное чтение файла.. Просто в итоге мне нужно вывести это все на форму. К примеру, все номера договоров в листбоксе, и когда кликаешь на один из них в другом месте появляется полная инфа по этому договору( компании подписаные на него, а кликая на них получать список совершенных ими операций в раках договора.) Структуру файла придумал не я и менять ее нельзя=)) надо просто прочитать.) Заранее спасибо всем откликнувшимся! |
|
| 28.09.2008, 01:48 | |
|
Ответы с готовыми решениями:
5
посимвольное чтение Организовать посимвольное чтение из текстового файла
|
|
Nereis
|
|
| 28.09.2008, 02:00 | |
|
Забыл добавить: язык C#
Я так понимаю надо открыть файл прочитать первую строку( где 00) и вывести это в textbox как заголовок файла, потом пройтись по файлу и составить список всех компаний(01). И потом по клику на них( в listbox'е) найти все 02 которые относятся к выбранной компании и вывести их отдельно куданить. Как это можно реализовать? |
|
|
Nereis
|
|
| 28.09.2008, 02:14 | |
|
Еще одно дополнение:
Забыл добавить что в каждой строке типа 01 и 02 через 5 пробелов еще написано имя компании.. без этого конечно никак было бы не связать эти строки и каждый блок заканчивается строкой типа 03. Т.е. конечный вид примера файла будет таким: 0012345 01123412345678 Company1 021230201200805012008 Company1 02321 17022008 Company1 021321504200817042008 Company1 03 01432187654321 Company2 023330208200706082007 Company2 03 01444488888888 Company3 03 |
|
|
2 / 2 / 0
Регистрация: 29.09.2008
Сообщений: 9
|
|||
| 29.09.2008, 13:53 | |||
|
Вопроса не увидел. В чем трудность? Формат строк известен, читаешь, анализируешь, вычленяешь нужную информацию и куда хочешь, туда и пишешь.
И читать как и любые файлы с символом новой строки - построчно. Прочел строку, посмотрел первые два символа, и передал оставшуюся часть на обработку, в зависимости от вида строки. Прочел следующую строку, ..., ...,
Можно прочесть все в какую-то коллекцию удобных для последующего поиска объектов. Создавая их по ходу разбора строк Можно проиндексировать строки, читая побайтно, и потом так же побайтно позиционируясь. Можно ..., ..., Насчет литературы - не встречал такой. Как понимаю - за ненадобностью, ибо формат файла, который тебе нужно прочесть: простой и лаконичный.
0
|
|||
|
1923 / 428 / 41
Регистрация: 12.07.2007
Сообщений: 2,062
|
||||||
| 03.10.2008, 03:43 | ||||||
|
Читать файл
0
|
||||||
|
Nereis
|
|
| 03.10.2008, 05:55 | |
|
Спасибо всем=) Я уже справился с этой задачей) все и правда было просто))) Считал все в коллекции объектов и с ними потом работал. Хотя предложение с бд ИМХО перспективнее=)
Еще раз всем спасибо, извините за беспокойство |
|
| 03.10.2008, 05:55 | |
|
Помогаю со студенческими работами здесь
6
Посимвольное считывание текста из файла
Посимвольное чтение файла Посимвольное чтение из файла Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
SDL3 для Web (WebAssembly): Обработчик клика мыши в браузере ПК и касания экрана в браузере на мобильном устройстве
8Observer8 02.02.2026
Содержание блога
Для начала пошагово создадим рабочий пример для подготовки к экспериментам в браузере ПК и в браузере мобильного устройства. Потом напишем обработчик клика мыши и обработчик. . .
|
Философия технологии
iceja 01.02.2026
На мой взгляд у человека в технических проектах остается роль генерального директора. Все остальное нейронки делают уже лучше человека. Они не могут нести предпринимательские риски, не могут. . .
|
SDL3 для Web (WebAssembly): Вывод текста со шрифтом TTF с помощью SDL3_ttf
8Observer8 01.02.2026
Содержание блога
В этой пошаговой инструкции создадим с нуля веб-приложение, которое выводит текст в окне браузера. Запустим на Android на локальном сервере. Загрузим Release на бесплатный. . .
|
SDL3 для Web (WebAssembly): Сборка C/C++ проекта из консоли
8Observer8 30.01.2026
Содержание блога
Если вы откроете примеры для начинающих на официальном репозитории SDL3 в папке: examples, то вы увидите, что все примеры используют следующие четыре обязательные функции, а. . .
|
|
SDL3 для Web (WebAssembly): Установка Emscripten SDK (emsdk) и CMake для сборки C и C++ приложений в Wasm
8Observer8 30.01.2026
Содержание блога
Для того чтобы скачать Emscripten SDK (emsdk) необходимо сначало скачать и уставить Git: Install for Windows. Следуйте стандартной процедуре установки Git через установщик. . . .
|
SDL3 для Android: Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 29.01.2026
Содержание блога
Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами. Версия v3 была полностью переписана на Си, в. . .
|
Инструменты COM: Сохранение данный из VARIANT в файл и загрузка из файла в VARIANT
bedvit 28.01.2026
Сохранение базовых типов COM и массивов (одномерных или двухмерных) любой вложенности (деревья) в файл, с возможностью выбора алгоритмов сжатия и шифрования.
Часть библиотеки BedvitCOM
Использованы. . .
|
SDL3 для Android: Загрузка PNG с альфа-каналом с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 28.01.2026
Содержание блога
SDL3 имеет собственные средства для загрузки и отображения PNG-файлов с альфа-каналом и базовой работы с ними. В этой инструкции используется функция SDL_LoadPNG(), которая. . .
|