Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Общие вопросы Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Закрытая тема
Ваша тема закрыта, почему это могло произойти? Возможно,
Нет наработок или кода, если нужно готовое решение - создайте тему в разделе Фриланс и оплатите работу.
Название темы включает слова - "Помогите", "Нужна помощь", "Срочно", "Пожалуйста".
Название темы слишком короткое или не отражает сути вашего вопроса.
Тема исчерпала себя, помните, один вопрос - одна тема
Прочитайте правила и заново правильно создайте тему.
 
Опции темы Поиск в этой теме
Старый 29.07.2013, 02:19   #1
JustSay
Новичок
Джуниор
 
Регистрация: 27.07.2013
Сообщений: 6
По умолчанию Ошибка при считывании из файла

При считывании файла (есть в архиве, outfile.txt) в 1 строке StringGrid'a (после фиксированной) должны выводиться данные 1 строки. А оно считывает только первые 5 элементов а 6 элемент закидывает в следующую строчку StringGrid'a, и так идёт дальше (6 из 2 кидает в качестве 1 в 3тью и т.д.) Без понятия как это исправить, подскажите пожалуйста.
Вложения
Тип файла: rar Лаб №7.rar (234.3 Кб, 8 просмотров)
JustSay вне форума
Старый 29.07.2013, 09:09   #2
Serge_Bliznykov
Старожил
 
Регистрация: 09.01.2008
Сообщений: 26,229
По умолчанию

во-первых, объясните, почему у Вас в начале второй и третье строк находятся пробелы?! Они Вам нужны?

во-вторых, попробуйте так (выделил изменения):
Код:
begin
  if dlgOpen1.Execute then
    begin
      FName:=dlgOpen1.FileName;
      StringGrid1.Visible:=true;
      List:=TStringList.Create;
      List.LoadFromFile('outfile.txt');
      StringGrid1.RowCount:=List.Count;
      StringGrid1.ColCount:=7;
      StringGrid1.FixedRows:=1;
      pole := '';
      for i:=1 to List.Count do
      begin
      k:=0;
      s:=List[i-1];
      if (Length(s)>0) then s := trim(s) + ' ';

      for j:=1 to length(s) do
      begin
      if s[j]<>' ' then
        pole:=pole+s[j]
      else
      begin
        StringGrid1.Cells[k,i]:=pole;
        pole:='';
        k:=k+1;
      end;
      end;
    end;
  end;

end;

p.s. я бы ещё для dlgOpen1 заполнил свойство Filter - чтобы отображались только текстовые файлы...
Serge_Bliznykov вне форума
Старый 29.07.2013, 10:12   #3
JustSay
Новичок
Джуниор
 
Регистрация: 27.07.2013
Сообщений: 6
По умолчанию

Пробелы не нужны. Они появляются при выводе в файл и я не знаю как от них избавиться.

И, кстати, не помогло.

Просто на некоторых форумах сообщение дописывается автоматически.

Всё. Выкрутился сам.


_________________
Не используйте форум как чат - не пишите несколько коротких сообщений подряд!
Есть что добавить - нажимайте кнопку "Правка/Редактировать" на своём крайнем сообщении
и изменяйте, добавляйте....

Прошу учесть на будущее...

Модератор.

Последний раз редактировалось JustSay; 29.07.2013 в 12:33.
JustSay вне форума
Старый 29.07.2013, 13:28   #4
Serge_Bliznykov
Старожил
 
Регистрация: 09.01.2008
Сообщений: 26,229
По умолчанию

Цитата:
Всё. Выкрутился сам.
ок. закрываю тему.
Serge_Bliznykov вне форума
Закрытая тема


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
доступ по неверному указателю при построчном считывании данных из файла okrill Общие вопросы C/C++ 3 01.09.2012 19:07
Ошибка при считывании из базы. VladimirNew БД в Delphi 1 16.02.2012 16:21
Дублирует структуру при считывании из файла RaTeN Общие вопросы C/C++ 2 05.10.2011 00:28
Проблема при считывании из файла JeyKip Общие вопросы C/C++ 0 17.01.2010 22:03
Помогите разобраться, ошибка при считывании из ini файла XATAB Помощь студентам 4 13.02.2007 05:57