| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > C++ Builder > Запись из стрингида в фаил и обратная загрузка! |
| Автор: XPyCT 26.6.2008, 09:59 | ||||
| Добрый день! как записать со стрингрида в фаил с использованием делемитедтекст вроде сделано! вот результат сохранения :
вот сам код!
как это все обратно открыть и загнать в стрингрид! пример из учебника культина! загон фаила обратно у него ну очень сложный для меня! мне там нифига не понятно! если кто знает как по проще это выразить помогите пожалуйста |
| Автор: Palladin 26.6.2008, 10:04 |
| Забей на это все Короче из стринггрида списываешь все в Memo потом Memo1->SaveToFile("путь.txt"); Потом при надобности загружаешь Memo1->LoadFromFile("путь к сохарненному фалу.txt"); и считываеш в стринггрид по своему условию P.S. Не бей, настроение хорошее просто |
| Автор: XPyCT 26.6.2008, 10:08 | ||
таким образом я сохраняю уже давно! но это геморный способ! в смысле потом считывания инфы! добавьте меня в асю есть пару вопросов! к стати и по поводу вашего мануала нужно подправить кое где 222-271-997 |
| Автор: Palladin 26.6.2008, 10:11 |
| Я в асе не сижу, если что PM |
| Автор: mrbrooks 26.6.2008, 11:11 |
| В чем проблема то? Циклами записываешь в файл - циклами считываешь из файла. |
| Автор: XPyCT 26.6.2008, 11:30 | ||||||
пс: это я все давно знаю! меня интересует как сохранить целый ряд разделенный делимитером а потом обратно загрузить потому как этот код сохранит все в один столбец! а делиметр упорядочит сохранение по строкам |
| Автор: mrbrooks 26.6.2008, 13:42 | ||
| Дык я ж тебе и говорю используй вложенные циклы. Вот пример. Наваял на спех ибо работа имхо работа.
Разделитель можешь оставить либо как я - двуеточие - либо пробел - либо чего хочешь. Не забудь естественно это учесть при парсинге. Так же перспективно использовать функцию StringReplace от Бормана для формирования файла с одним значением в строке - и далее ловкость рук. Чего непонятно спрашивай. |
| Автор: XPyCT 27.6.2008, 15:27 | ||||
Спасибо вам за дельный ответ! сейчас буду пробовать |
| Автор: Escort 28.6.2008, 09:55 | ||||
| Люди!!!! Призываю к профессиональному программированию!!!! (...вы же не дельфийсты Экономте память...
Добавлено через 1 минуту и 13 секунд
Добавлено через 2 минуты и 33 секунды PS против Delphi ничего против не имею. Просто новички на Delphi расставив на форме 2 кнопки считают себя программистами )) |
| Автор: Riply 28.6.2008, 10:52 | ||
| Вместо задавания кучи вопросов на форуме, решила поробовать сохранить и прочитать. Очень надеюсь, что кому-нибудь будет не лень потыкать меня носом в ошибки
|
| Автор: mrbrooks 28.6.2008, 13:23 |
| Escort че ее экономить? Тем более что она динамическая. Использовал - освободил. Чай не гигабайты пережевываем. Если уж работать с файлом на прямую чисто на Си тогда будет более гуманно использовать FILE *file а не TextFile f - это уже есть использование Дельфятинки. Уж если трястись над использованием памяти WinAPI в руки и вперед. Будет тебе имхо экономия. Riply |
| Автор: Escort 28.6.2008, 17:59 |
| mrbrooks!("Чай не гигабайты пережевываем") из-за таких программ обычно Винда и летит на...!!!!!!! |
| Автор: XPyCT 28.6.2008, 19:15 | ||||||
молодой человек! вы первый пост читали? я не считаю себя суппер пуппер программистом - мне это и не надо! мне нужен был простои пример! вот и все! пс: спасибо за ответ! спс всем вот такой способ есть оцените! сохранение
загрузка
Автор "moskk" что скажете? |
| Автор: mrbrooks 29.6.2008, 10:29 |
| Escort Куда она летит. Хватит нести чушь. В эпоху C# и dot.net ты мне тут будешь лепить про нерацианальное использование памяти? Автор тебе уже написал свою точку зрения. Чего лезешь со своими оптимизациями туда куда не надо. Еще раз повторяю - хочешь быстроты и минимизации - забудь про VCL и фигач на WinAPI и не надо "ФАК МОЙ МОЗГ" XPyCT На мой взгляд не плохо имхо для начала. Ты по сути реализовал файловый ввод/вывод с помощью компонентов, а теперь попробуй то же самое только с использованием файлового ввода/вывода с помощью потоков в стиле C++. А то некоторые особо рьяные борцы за рационализм спать спокойно не будут. |
| Автор: XPyCT 29.6.2008, 15:32 | ||||||
mrbrooks! смотри вчера весь вечер ковырял голова квадратная! я не силен еще )) помоги плз смотрите мне нужно к примеру есть 2 поля и 3 записи
после сохранения чтоб в файле выгледело так
соответсвенно потом и загруз потом его обратно! просто не исключено что по фаилу до момента передачи его в стрингид нужно будет проводить поиск типа по выбору! плз оч надо |
| Автор: mrbrooks 30.6.2008, 09:13 | ||
Дык ведь все по аналогии. В данном примере использовал работу с файлом на прямую, без TStringList - а то критикуют тут нас с тобой рационалисты
Не скажу что данный пример оптимален по работе с файлом - но при известной его структуре пойдет. Иначе парсить строку. Но есть одно замечание имхо. При таких данных самое гламурное хранить их уже в БД. |
| Автор: XPyCT 30.6.2008, 11:44 |
| спасибо вам огромное! пошел колдовать |
| Автор: Riply 1.7.2008, 15:16 | ||
| В дополнение к коду, который я здесь выкладывала, попробовала написать еще две процедуры: сохранение "грида" в файл и загруза.
Как и раньше, буду благодарна за "тыканье меня носом в ошибки" Добавлено через 2 минуты и 43 секунды P.S. Почему код так "съезжает" ? Как от этого избавиться ? |
| Автор: XPyCT 1.7.2008, 19:08 |
| я бы тыкнул в ошибки но для меня пока это сложно! спс за ответы! огромное |