1

Тема: AHK: Вычитание текстовых файлов

Здравствуйте.
Есть два текстовых файла со списками номеров. Задача удалить из первого все номера, что есть во втором, а во второй добавить все номера из первого которых там не было. Подскажите пожалуйста как это сделать. Заранее благодарен.

2

Re: AHK: Вычитание текстовых файлов

Нужно знать, как отделяется в списках один номер от другого.

Разработка AHK-скриптов:
e-mail dfiveg@mail.ru
Telegram jollycoder

3 (изменено: Indomito, 2014-07-19 23:17:33)

Re: AHK: Вычитание текстовых файлов

teadrinker пишет:

Нужно знать, как отделяется в списках один номер от другого.

думаю стандартно, т.е. через ","


shut пример бы текстовых файлов не помешал, а так то данные операции расписаны подробно в справке по языку - ищи по ключевому слову LOOP.

"На каждое действие есть равная ему противодействующая критика." Постулат Харриссона
OS Windows 7 x64
AutoHotkey v1.1.32.00 - November 24, 2019
Click to Download

4

Re: AHK: Вычитание текстовых файлов

Разделителя может и не быть, например:

23432егнен243 4324, гг444\5

тут вопрос номера это телефонов в которых может быть или не быть + в начале или минус  или пробел в середине. Если это целые числа, то их можно раскидать и без разделителя.

По вопросам возмездной помощи пишите на E-Mail: serzh82saratov@mail.ru Telegram: https://t.me/sergiol982
Win10x64 AhkSpy, Hotkey, ClockGui

5 (изменено: shut, 2014-07-20 00:34:12)

Re: AHK: Вычитание текстовых файлов

Номера отбиты знаком абзаца. В номерах никаких знаков типа дефисов нет, только цифры.

6

Re: AHK: Вычитание текстовых файлов

Если нет никаких других знаков, кроме цифр и знаков абзаца, и если используется именно такой знак абзаца (¶), тогда так:

FilePath1 := "D:\Downloads\1.txt"  ; указать истинные пути к файлам
FilePath2 := "D:\Downloads\2.txt"

SetBatchLines, -1
FileRead, Text1, % FilePath1
FileRead, Text2, % FilePath2
addText2 := "¶" . Text2 . "¶"

NewText1 := ""
Loop, parse, Text1, ¶
   NewText1 .= InStr(addText2, "¶" . A_LoopField . "¶") ? "" : A_LoopField . "¶"
NewText1 := SubStr(NewText1, 1, -1)

FileDelete, % FilePath1
FileDelete, % FilePath2

FileAppend, % NewText1, % FilePath1
FileAppend, % Text2 . "¶" . NewText1, % FilePath2
Разработка AHK-скриптов:
e-mail dfiveg@mail.ru
Telegram jollycoder