![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Как программно удалить одну строку из текстового файла(txt)? [D6, WinXP]
Lexus_samara © (2009-08-12 16:07:00)Как удалить одну строчку из текстового файла? Путь к файлу хранится в label. Поясню точнее на примере...
Есть каталог: files/folds. В ней 3 папки (fold1, fold2, fold3). В каждой из этих папок есть по 4 текстовых файлов с одинаковыми названиями (fold1.txt, fold2.txt, fold3.txt, fold4.txt).
В зависимости от выбранных параметров в label1 записывается строка типа '11', '12', '13', '14', '21', '22', '23', '24', '31', '32', '33', '34'. То есть label1 состоит из 2ух цифр. Первая обозначает папку (1 - это fold1, 2 - fold2, 3 - fold3). Вторая означает конкретный текстовый файл (1 - fold1.txt, 2 - fold2.txt и т.д.)
К примеру в label1 записано '23'. Как мне удалить одну строчку в файле files/folds/fold2/fold3.txt ???
Помогайте пожалуйста мастера
Сергей М. (2009-08-13 20:52:00) [1]
> Вот кстати эта ветка если интересно
Да.. Там, кстати, диагноз автору поставлен гораздо раньше, нежели здесь (цитата):
Искусственный интеллект - фигня по сравнению с естественной глупостью
)
Lexus_samara (2009-08-13 20:39:00) [2]Удалено модератором
Примечание: Мат
oldman (2009-08-12 18:26:00) [3]Уважаемый автор! Ваш поток сознания в [0] зашкалил.
Объясните по-русски, что у вас не получается - удалить строку из файла или найти файл по идиотской системе кодирования пути в label?
Эти две задачи решаются очень просто. Поверьте на слово.
Ega23 (2009-08-12 16:44:00) [4]1. Взять число в Label. (StrToInt + F1)
2. Разделить нацело на 10. Результат - индекс папки.(div + F1)
3. Взять остаток от деления на 10. Результат - индекс файла. (mod + F1)
4. Сформировать путь к файлу. (сложение строк + F1)
5. Проверить, есть ли такой файл (FileExists + F1)
6. Открыть файл (TextFile, AssignFile, ResetFile + F1)
7. Найти нужную строку (while, Eof, сравнение строк + F1)
8. Закрыть файл (CloseFile + F1)
Пункты 6,7,8 можно выполнить через TStringList (TStringList + F1)
Dennis I. Komarov (2009-08-12 16:43:00) [5]
> Путь к файлу хранится в label.
И откуда он там берется?...
А если там 123, это в 1-ой папке 23-ий файл, или в 12-ой 3-ий?
Anatoly Podgoretsky (2009-08-12 16:37:00) [6]Опять студенты с тупыми заданиями.
Kolan (2009-08-12 16:24:00) [7]Нужно открыть файл, удалить строку и сохранить его.
«Путь к файлу хранится в label.» — хуже не придумаешь.