Аватар для KWS
1 / 1 / 0
Регистрация: 14.07.2014
Сообщений: 58

Как записать данные в StringGrid через OpenDialog из файла?

03.10.2014, 07:12. Показов 2467. Ответов 6
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Доброго времени суток! Как записать данные в StringGrid через OpenDialog из файла? Есть кнопка сохранения с кодом:
Перековыривал на подобие ее открытие файла для заполнения стринггрида, но чего-то не заполняется он. Подскажите, опыта не хватает
Код сохранения такой - понятненько, что меняем усе на опендиалог и открытие файла тока для чтения, но с серединкой чего-то не разобрался.
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
{
  SaveDialog1->DefaultExt="txt";
  SaveDialog1->Filter="ASCII files (*.txt)|*.txt";
  if(SaveDialog1->Execute())
  {
    if(ExtractFileExt(SaveDialog1->FileName).UpperCase()==".TXT")
    {
      FILE *fop=fopen(SaveDialog1->FileName.c_str(),"wt");
      if(fop)
      {
        if(StringGrid1->RowCount>0)
          fprintf(fop,StringGrid1->Rows[0]->CommaText.c_str());
        for(int i=1;i<StringGrid1->RowCount;i++)
          fprintf(fop,"\n%s",StringGrid1->Rows[i]->CommaText.c_str());
        fclose(fop);
      }
    }
  }
}
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
03.10.2014, 07:12
Ответы с готовыми решениями:

Загрузить данные из файла Excel в StringGrid через OpenDialog
Доброго времени суток! Нужно загрузить данные из Excel файла в StringGrid через OpenDialog. Из StringGrid в Excel получилось...

Копировать данные файла csv в stringgrid при помощи opendialog
Приветствую вас! Помогите написать код который который копировал бы таблицу файла csv и засовывал его в stringgrid при помощи...

Как загрузить StringGrid по содержимому, выбранного в OpenDialog текстового файла?
procedure TForm8.Button1Click(Sender: TObject); const m = 10; n = 7; type BootLine = array of string; var FileData: TextFile; var...

6
 Аватар для demon_7
260 / 192 / 60
Регистрация: 12.05.2013
Сообщений: 857
03.10.2014, 08:14
Лично мне кажется что использовать TStringList будет удобнее и для записи в StringGrid и для сохранения из него.
Ну и если грамотно использовать свойство Delimiter то Ваших проблем не будет.
0
 Аватар для KWS
1 / 1 / 0
Регистрация: 14.07.2014
Сообщений: 58
03.10.2014, 08:47  [ТС]
мдя. вчера под конец рабочего дня затупил походу, через стринглист вчера тоже кодил. Сечас переписал усе, терь работает. Тему можно закрыть
0
 Аватар для demon_7
260 / 192 / 60
Регистрация: 12.05.2013
Сообщений: 857
03.10.2014, 08:49
в таком случае поделитесь Вашей конечной реализацией, ведь Ваша тема может быть полезна другим!
0
 Аватар для KWS
1 / 1 / 0
Регистрация: 14.07.2014
Сообщений: 58
03.10.2014, 09:47  [ТС]
блин. на самсунге s5660 строчу . на секретке работаю. вопщем мож и криво, но как-то так.
C++
1
2
3
4
5
6
 TStringList *ListO=new TStringList;
for(int i=0;IntToStr(ListO->Count);i++)
{
SG->Rows[i]->Delimiter=L',';       //SG -  стринггрид
SG->Rows[i]->DelimitedText=ListO->Strings[i];
}
0
Модератор
 Аватар для D1973
9845 / 6386 / 2451
Регистрация: 21.01.2014
Сообщений: 27,151
Записей в блоге: 3
03.10.2014, 10:34
И не забываем после всего
C++
1
delete ListO;
0
Супер-модератор
Эксперт Pascal/DelphiАвтор FAQ
 Аватар для volvo
33149 / 21441 / 8223
Регистрация: 22.10.2011
Сообщений: 36,773
Записей в блоге: 9
03.10.2014, 11:32
Цитата Сообщение от KWS Посмотреть сообщение
мож и криво
Конечно криво. Вот так:
C++
1
2
3
4
5
6
std::auto_ptr<TStringList> ListO(new TStringList);
// тут читаем в ListO из файла
for(int i=0; i < ListO->Count; i++)
{
    SG->Rows[i]->CommaText=ListO->Strings[i];
}
будет гораздо лучше, в особенности описание цикла...
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
03.10.2014, 11:32
Помогаю со студенческими работами здесь

Записать данные из .txt файла в StringGrid
Есть файл с большим количеством строк, StringGrid и ComboBox. Требуется записать данные в столбик StringGrid, причем выводить нужно по 6...

OpenDialog: открыть текстовый файл и записать его в StringGrid
Помогите пожалуйста, нужно открыть тхт файл и разместить его в стрингриде у меня не открывает, может в коде ошибка procedure...

Как прочесть файл через OpenDialog и записать строку с него в Memo
А как сделать так чтоб можна было бы прочесть текстовой файл через ОпенДиалог, записать строку с него в Мемо???

Импорт из Excel в StringGrid через OpenDialog
В приложении нужно данные из Excel импортировать в StringGrid. Код вроде как нашёл, но везде, где находил, путь к файлу прописывается...

Считывание txt в StringGrid через OpenDialog
Вечер добрый, начал делать прогу и что то застрял. Задача такая: нужно сделать считывания таблицы из txt(таблица 5*5 без заголовков) файла...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
7
Ответ Создать тему
Опции темы

Новые блоги и статьи
Хак домофона или как открыть дверь по номеру
yariko 25.06.2025
Забыли дома ключ. Не проблема. Можно открыть дверь домофона, просто позвонив на свой номер квартиры. Идея состоит в следующем. Внутрь трубки абонента встраивается контроллер, который по звонку сам. . .
Как украсить новогоднюю елку с Q# и Qiskit
EggHead 24.06.2025
Что может быть необычнее, чем применить законы квантовой механики для украшения новогодней елки? Пока другие развешивают обычные гирлянды, я решил объединить свою страсть к квантовым вычислениям с. . .
Системы нулевого доверия на C#
UnmanagedCoder 24.06.2025
Традиционная архитектура безопасности работает по принципу средневекового замка: создаём высокие стены вокруг корпоративной сети, укрепляем ворота межсетевыми экранами и системами обнаружения. . .
Снова не мой путь. Циклическое среднее, я обеими руками за проверку условия, в ракурсе данной задачи - циклическое среднее в топку.
Hrethgir 24.06.2025
Привет. Такой вопрос - нужно выводить среднее математическое между двумя направлениями, интервал значений которых может лежать в диапазоне одного оборота по кругу. Проблема заключается в том, что. . .
Деплой Flask приложения
py-thonny 23.06.2025
За годы работы с Flask я натыкался на одни и те же грабли достаточно часто, чтобы наконец научится их обходить. И сегодня хочу поделится опытом, который сбережет вам немало нервных клеток. Начнем с. . .
WebAssembly и контейнеры в .NET Aspire для оркестрации распределенных архитектур
ArchitectMsa 23.06.2025
Я наблюдаю, как WebAssembly (или просто WASM) постепенно выходит за рамки своего первоначального предназначения — исполнения кода на стороне браузера. Теперь эта технология проникает в серверную. . .
Непрерывная интеграция для пакета Python
Mr. Docker 22.06.2025
Было 4 часа утра пятницы, когда я выпустил новую версию нашей внутренней библиотеки для обработки данных. Релиз 0. 5. 2 содержал небольшой фикс для обработки дат в ISO формате, что может пойти не так?. . .
Продвинутый ETL на C# из OLTP БД в хранилище
stackOverflow 22.06.2025
Работая в сфере корпоративной аналитики, я постоянно сталкиваюсь с одним и тем же - нужны чистые, структурированные и, главное, свежие данные. Без них современные аналитические системы, машинное. . .
Мастер-класс по микросервисам на Node.js
Reangularity 21.06.2025
Node. js стал одной из самых популярных платформ для микросервисной архитектуры не случайно. Его неблокирующая однопоточная модель и событийно-ориентированный подход делают его идеальным для. . .
Управление Arduino из WPF приложения
Wired 21.06.2025
Зачем вообще связывать Arduino с WPF-приложением? Казалось бы, у Arduino есть собственная среда разработки, своя экосистема, свои способы управления. Однако при создании серьезных проектов. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru