|
0 / 0 / 1
Регистрация: 08.11.2008
Сообщений: 86
|
||||||
Сохранение/Загрузка StringGrid'a в файл02.07.2009, 15:04. Показов 25215. Ответов 21
Метки нет (Все метки)
Всем привет.
Помогите пожалуйста переписать дельфийский код в с++.
0
|
||||||
| 02.07.2009, 15:04 | |
|
Ответы с готовыми решениями:
21
StringGrid - загрузка из и сохранение в XML файл Сохранение/Загрузка массива в файл тхт |
|
Почетный модератор
8785 / 2538 / 144
Регистрация: 07.03.2007
Сообщений: 11,873
|
|
| 02.07.2009, 15:24 | |
|
а вам не подойдут фунции LoadFormFile и SaveToFlie стандартные?
0
|
|
|
0 / 0 / 1
Регистрация: 08.11.2008
Сообщений: 86
|
|
| 02.07.2009, 15:33 [ТС] | |
|
а как ими пользоваться? Куда вписывать имя файла и адрес сохранения?
0
|
|
|
Почетный модератор
8785 / 2538 / 144
Регистрация: 07.03.2007
Сообщений: 11,873
|
||||||
| 02.07.2009, 15:45 | ||||||
|
почитайте справку по классу TStringGrid:
0
|
||||||
|
0 / 0 / 1
Регистрация: 08.11.2008
Сообщений: 86
|
|
| 02.07.2009, 17:23 [ТС] | |
|
у меня справка не открывается почему то(( видимо она не установлена
0
|
|
|
Почетный модератор
8785 / 2538 / 144
Регистрация: 07.03.2007
Сообщений: 11,873
|
||||||
| 02.07.2009, 17:53 | ||||||
|
malik, я что-то видимо попутал... но сути это не меняет... при загрузке данных:
1) создаешь TStringList* 2) грузишь туда данные методом LoadFromFile (данные желательно с каким-то разделителем) 3) бьешь строку по разделителям и пишешь функция разбиения строки на подстроки:
все аналогично, но отличие в том, что формируешь строки с разделителем конкатенацией, записываешь в TStringList и потом вызываешь SaveToFile...
0
|
||||||
|
74 / 74 / 4
Регистрация: 31.05.2009
Сообщений: 243
|
||||||||||||||||||||||||||
| 02.07.2009, 20:55 | ||||||||||||||||||||||||||
Сообщение было отмечено как решение
Решение
StringGrid - это простейшая таблица. У нее принцып сохранения файла очен простой. Перед тем как его сохранять, нужно его переобразовать (эта функция как раз это и делает - DelimitedText). Тогда, перед загрузкой файла, его опять нужно переобразовувать, тогда, StringGrid будет его понимать.
Припустим, что:
Сохранение обработанных данных:
![]() Добавлено через 4 минуты 52 секунды Думаю этот пример, можно в Faq заложить
6
|
||||||||||||||||||||||||||
|
0 / 0 / 1
Регистрация: 08.11.2008
Сообщений: 86
|
|
| 02.07.2009, 22:07 [ТС] | |
|
Я пишу приложение для учета продаж. Там у мя будет что то типа базы проданных товаров, которая будет постоянно дополняться, я все уже сделал, осталось только сохранение доделать. Сохранять буду 2 стринг грида в 1 файл. Каким методом мне это лучше сделать? И как поступать с последующими сохранениями? Дописывать в файл или же полностью перезаписывать в него?
0
|
|
|
74 / 74 / 4
Регистрация: 31.05.2009
Сообщений: 243
|
|
| 02.07.2009, 23:21 | |
|
А не проще просто сохранить 2 базы в 2 файла? Зачем по китайськи делать?
0
|
|
|
0 / 0 / 1
Регистрация: 08.11.2008
Сообщений: 86
|
||||||
| 03.07.2009, 13:46 [ТС] | ||||||
|
Можно и в 2 файла, но то что вы мне объясняли я не понял)) какой смысл что то куда то грузить когда можно просто поставить функцию которая будет бегать по строкам и записывать в файл, а потом просто считывать оттуда.
Добавлено через 2 часа 21 минуту 32 секунды Делаю через SaveFromFile, возникла проблемка, записал стринг грид в файл , а как теперь загрузить с него? я ведь не знаю сколько там было строк.
0
|
||||||
|
Почетный модератор
8785 / 2538 / 144
Регистрация: 07.03.2007
Сообщений: 11,873
|
|
| 03.07.2009, 14:54 | |
|
зато RowCount и ColCount знают
0
|
|
|
0 / 0 / 1
Регистрация: 08.11.2008
Сообщений: 86
|
|
| 03.07.2009, 15:17 [ТС] | |
|
а при загрузке c файла в стринг грид? изначально у меня стринг грид пустой RowCount=1, в него я должен загрузить информацию с файла. Как это сделать?
0
|
|
|
Почетный модератор
8785 / 2538 / 144
Регистрация: 07.03.2007
Сообщений: 11,873
|
|
| 03.07.2009, 15:21 | |
|
ну если бы почитал, что я тебе писал выше... работай не через сам стринггрид, а через TStringList, тогда у тебя все будет известно заранее, еще до загрузки... да и выгружается инфа из грида мягко говоря не очень
0
|
|
|
2348 / 1721 / 149
Регистрация: 06.03.2009
Сообщений: 3,675
|
|
| 03.07.2009, 15:25 | |
|
malik, а ты не хочешь использовать БД (MS Access, например) для хранения этих данных. Будешь использовать связку ADOTable + DataSource + DBGrid. Если все правильно настроишь, то даже писать практически ничего не надо будет. Да и БД лучше подойдет для твоих целей.
0
|
|
|
0 / 0 / 1
Регистрация: 08.11.2008
Сообщений: 86
|
|
| 03.07.2009, 20:28 [ТС] | |
|
0
|
|
|
0 / 0 / 1
Регистрация: 08.11.2008
Сообщений: 86
|
|
| 22.07.2009, 20:15 [ТС] | |
|
0
|
|
|
74 / 74 / 4
Регистрация: 31.05.2009
Сообщений: 243
|
||||||
| 23.07.2009, 03:09 | ||||||
|
Если я тебя правильно понял, то:
--------------------------------------- Смотри у тебя стоит компонент StringGrid. Что бы он понял твои данные при загрузке, нужна ф-ция DelimitedText. Вот пример только загрузки файла (я его выше указал):
P.S. В том примере, что выше все подробно описано и прокомментировано.
0
|
||||||
|
0 / 0 / 1
Регистрация: 08.11.2008
Сообщений: 86
|
||||||
| 23.07.2009, 18:56 [ТС] | ||||||
0
|
||||||
|
74 / 74 / 4
Регистрация: 31.05.2009
Сообщений: 243
|
|||||||||||||||||||||
| 24.07.2009, 14:30 | |||||||||||||||||||||
|
Да, думал я долго... Потом дошло)))
Смотри, ты добавить в стринг риде строку то добавил:
Помнишь при загрузки базы мы присваивали кол. строк из вспомог. табл в стринг рид? Вот также нужно и при сохранении, только наоборот. Но! Тут таки опять трабл, так сделать почему-то нельзя:
0
|
|||||||||||||||||||||
|
AkinoRed
|
||
| 22.10.2009, 22:48 | ||
|
строка выше не работает. ругается. error declaration |
||
| 22.10.2009, 22:48 | |
|
Помогаю со студенческими работами здесь
20
Сохранение и Загрузка объектов класса через файл Загрузка данных из бинарных файлов и сохранение построчно в .dat файл Сохранение из StringGrid массива в файл и загрузка из файла в StringGrid
Сохранение в файл из Stringgrida Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
SDL3 для Web (WebAssembly): Реализация движения на Box2D v3 - трение и коллизии с повёрнутыми стенами
8Observer8 20.02.2026
Содержание блога
Box2D позволяет легко создать главного героя, который не проходит сквозь стены и перемещается с заданным трением о препятствия, которые можно располагать под углом, как верхнее. . .
|
Конвертировать закладки radiotray-ng в m3u-плейлист
damix 19.02.2026
Это можно сделать скриптом для PowerShell. Использование
. \СonvertRadiotrayToM3U. ps1 <path_to_bookmarks. json>
Рядом с файлом bookmarks. json появится файл bookmarks. m3u с результатом.
# Check if. . .
|
Семь CDC на одном интерфейсе: 5 U[S]ARTов, 1 CAN и 1 SSI
Eddy_Em 18.02.2026
Постепенно допиливаю свою "многоинтерфейсную плату". Выглядит вот так:
https:/ / www. cyberforum. ru/ blog_attachment. php?attachmentid=11617&stc=1&d=1771445347
Основана на STM32F303RBT6.
На борту пять. . .
|
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
|
|
И ясному Солнцу
zbw 12.02.2026
И ясному Солнцу,
и светлой Луне.
В мире
покоя нет
и люди
не могут жить в тишине.
А жить им немного лет.
|
«Знание-Сила»
zbw 12.02.2026
«Знание-Сила»
«Время-Деньги»
«Деньги -Пуля»
|
SDL3 для Web (WebAssembly): Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 12.02.2026
Содержание блога
Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами и вызывать обработчики событий столкновения. . . .
|
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 11.02.2026
Содержание блога
Библиотека SDL3 содержит встроенные инструменты для базовой работы с изображениями - без использования библиотеки SDL3_image. Пошагово создадим проект для загрузки изображения. . .
|