![]() |
Модераторы: Snowy, MetalFan, bems, Poseidon |
![]() ![]() ![]() |
|
zhefran |
|
|||
![]() Бывалый ![]() Профиль Группа: Участник Сообщений: 237 Регистрация: 27.9.2007 Где: Винница-Киев-Ирпе нь-?, Украина Репутация: нет Всего: нет |
Есть такая задачка:
Нужно вставлять строку в определенное место в файле. Есть такие пункты в файле: 1. Евро; 2. Доллары; 3. Фунты; 4. Рубли. Например, получаю цену в рублях. Мне необходимо вставить ее в файл в конце пункта рубли. Получил 1235 Рубли: 3235 500 Вставить в эту строчку 1235 Доллары: 5465 25 3 Что-то типа такого. И еще если цена в такой валюте, которой в файле нет - то создать пункт с такой валютой. --------------------
Ніщо нізвідки не виникає і нікуди не дівається!Лечение компьютеров от вирусов! Бесплатно! |
|||
|
||||
VICTAR |
|
|||
Эксперт ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 1108 Регистрация: 6.10.2006 Репутация: 10 Всего: 80 |
используй TStringList. IndexOf для поиска. Insert для вставки.
|
|||
|
||||
zhefran |
|
|||
![]() Бывалый ![]() Профиль Группа: Участник Сообщений: 237 Регистрация: 27.9.2007 Где: Винница-Киев-Ирпе нь-?, Украина Репутация: нет Всего: нет |
Использую TStringList and Insert.
В чем загвоздка - мне надо вставить перед следующим пунктом, какой это пункт мне неизвестно. Делать явную подпись "валюта" или что? 1. Искать сначала пункт "рубли" 2. Потом искать следующий пункт. 3. Вставлять перед следующим пунктом цену. Так что ли? Есть такие нюанси: 1. Что если пункт последний? 2. В Insert надо задавать конкретный номер строки, как вытянуть номер строки перед следующим пунктом? --------------------
Ніщо нізвідки не виникає і нікуди не дівається!Лечение компьютеров от вирусов! Бесплатно! |
|||
|
||||
VICTAR |
|
|||
Эксперт ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 1108 Регистрация: 6.10.2006 Репутация: 10 Всего: 80 |
Допустим IndexOf('Рубли')=2, дальше перебирай со второго индекса строки, и проверяй являются ли они числами, как дойдешь до "нечисла" или до конца вставляй свое значение.
Добавлено через 1 минуту и 29 секунд Перебирать будешь в цикле, так что номер строки у тебя будет |
|||
|
||||
Alix |
|
|||
![]() L45 ![]() ![]() Профиль Группа: Участник Сообщений: 581 Регистрация: 4.5.2005 Где: Pskov/Spb Репутация: 8 Всего: 23 |
иногда имеет смысл изменить формат хранения данных, чтобы было проще работать...
-------------------- Знание только тогда знание, когда оно приобретено усилиями своей мысли, а не памятью (с) Л. Толстой High tech. Low live. (с) Gardner Dozois |
|||
|
||||
zhefran |
|
|||
![]() Бывалый ![]() Профиль Группа: Участник Сообщений: 237 Регистрация: 27.9.2007 Где: Винница-Киев-Ирпе нь-?, Украина Репутация: нет Всего: нет |
Victar, как проверить число строка или нет? Пробывать перевести с помощью StrToInt?
Это сообщение отредактировал(а) zhefran - 23.10.2007, 17:17 --------------------
Ніщо нізвідки не виникає і нікуди не дівається!Лечение компьютеров от вирусов! Бесплатно! |
|||
|
||||
Alix |
|
|||
![]() L45 ![]() ![]() Профиль Группа: Участник Сообщений: 581 Регистрация: 4.5.2005 Где: Pskov/Spb Репутация: 8 Всего: 23 |
http://forum.vingrad.ru/index.php?showtopi...t&p=1293492 -------------------- Знание только тогда знание, когда оно приобретено усилиями своей мысли, а не памятью (с) Л. Толстой High tech. Low live. (с) Gardner Dozois |
|||
|
||||
Lonley |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 597 Регистрация: 7.10.2003 Где: северные ворота М урманск Репутация: нет Всего: 4 |
я бы отобразил файл в память CreateFileMapping // MapViewOfFile
и работал у же бы с памятью.... если файл не для чтения, а для хранения информации то можно ввести дополнительные управляющие символы или создать собственный формат хранения --------- или каждый раз обновлять смещение относительно наименований валют -------------------- Земную жизнь пройдя до половины, Я очутился в сумрачном лесу, Утратив правый путь во тьме долины. Каков он был, о, как произнесу, Тот дикий лес, дремучий и грозящий, |
|||
|
||||
![]() ![]() ![]() |
Правила форума "Delphi: Для новичков" | |
|
Запрещается! 1. Публиковать ссылки на вскрытые компоненты 2. Обсуждать взлом компонентов и делиться вскрытыми компонентами
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Snowy, MetalFan, bems, Poseidon, Rrader. |
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | Delphi: Для новичков | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |