powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / C++ [игнор отключен] [закрыт для гостей] / Проблема со считыванием строк
5 сообщений из 30, страница 2 из 2
Проблема со считыванием строк
    #33800612
Да не обижаюсь я...
Жду любых советов....
...
Рейтинг: 0 / 0
Проблема со считыванием строк
    #33800623
Карабас Барабас
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
АлексейПыриковЖду любых советов
долго будешь ждать

1. ты весь код привел ? возможно проблема не в чтении файла
2. как определил, что строки именно удваиваются ? (может просто одна и таже
везде ? или может файл кривой ?)

Posted via ActualForum NNTP Server 1.3
...
Рейтинг: 0 / 0
Проблема со считыванием строк
    #33800644
Dmitrii K.
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
АлексейПыриковВсем привет!

Читаю файл построчно вот таким образом
while(!feof(fp)){
fgets(str, 925, fp);
/////////Íîìåð äîêóìåíòà
*str_tmp = 0;
strncpy(str_tmp, str+33, 3);
str_tmp[3] = '\0';
SG_DOC->Cells[0][count] = str_tmp;
count++;}

Почему все строки из файла прочитываются по два раза?
Если 925 - точная длина строки и все строки одинаковой длины (а похоже так оно и есть, хотя и странно), то происходит примерно следующее:
1. fgets читает 925 символов (то есть всю строку кроме самого символа конца строки)
2. работа очередной итерации цикла....заполняется ячйка грида куском считанного буфера
3. fgets находит тот самый несчитанный "конец строки", считывает его (и больше ничего!) при этом не изменяя содержимое str
4. работа очередной итерации цикла....заполняется ещё одна ячйка грида куском "старого" буфера
5. ну и так далее...
АлексейПыриковКак исправить ситуацию?
Поставить 926 :)

и почитать справку по fgets
...
Рейтинг: 0 / 0
Проблема со считыванием строк
    #33800675
Карабас Барабас
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dmitrii K.Поставить 926 :)
я бы вобще отказался от работы через gets, раз строки фиксированной длины.
CreateFileMapping + вычитывание определенных кусков в цикле = реальный
выигрыш в скорости.
А еще если отказаться от стринггрида в пользу drawgrid - тогда вобще песня
а апофеозом станет отказ от плоских файлов в пользу СУБД

Posted via ActualForum NNTP Server 1.3
...
Рейтинг: 0 / 0
Проблема со считыванием строк
    #33800726
Dmitrii K.
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Карабас Барабас
Dmitrii K.Поставить 926 :)
я бы вобще отказался от работы через gets, раз строки фиксированной длины.
CreateFileMapping + вычитывание определенных кусков в цикле = реальный
выигрыш в скорости.
А еще если отказаться от стринггрида в пользу drawgrid - тогда вобще песня
а апофеозом станет отказ от плоских файлов в пользу СУБД

Есть предложение автору топика протестировать предложенные методы, сравнить производительность и результат выложить на форум ))
...
Рейтинг: 0 / 0
5 сообщений из 30, страница 2 из 2
Форумы / C++ [игнор отключен] [закрыт для гостей] / Проблема со считыванием строк
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]