Имя пользователя:
Пароль:  
Помощь | Регистрация | Забыли пароль?  | Правила  

Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Скриптовые языки администрирования Windows » Любой язык - [решено] Разделение одного txt файла на несколько txt файлов

Ответить
Настройки темы
Любой язык - [решено] Разделение одного txt файла на несколько txt файлов

Ветеран


Сообщения: 531
Благодарности: 4

Профиль | Отправить PM | Цитировать


Здравствуйте. Есть большой txt файл. В нём список сообщений с разделителем (в конце каждого сообщения). Необходимо разделить данный txt файл на несколько других txt файлов. В базовом txt файле, много сообщений с ссылками на различные имена файлов. Нужно разделить этот txt файл по маске (которую я укажу) имени файла ссылки . То есть в результате у нас получится множество txt файлов, в каждом из которых будут сообщения с ссылками, где имена файлов будут совпадать с указанной маской.

Пример:
базовый txt файл:
Код: Выделить весь код
Subject message


[img]http://s5.depic.me/0686/zp0hjgh3m7d_o/0634yandex_m.jpg[/img]
[img]http://s6.depic.me/06876/26fhgh8kxo8_o/0634yandex_t.jpg[/img]

File Name.type:  0634yandex.avi
Resolution:  1920x1080 
Duration:  0:08:56
Filesize:  952Mb

[b]Download
[url]https://k2s.cc/file/f07we76wee3/0634yandex.mp4[/url][/b]
//==================
Subject message


[img]http://s7.depic.me/065676/cjb9jhkjhbm78_o/0087start_m.jpg[/img]
[img]http://s7.depic.me/07666/56ygjfjh7kikg_o/0087start_t.jpg[/img]

File Name.type:  0087start.wmv
Resolution:  640x480 
Duration:  0:53:20
Filesize:  311Mb

[b]Download
[url]https://k2s.cc/file/059we76456/0087start.mp4[/url][/b]
//==================
Subject message


[img]http://s5.depic.me/06396/xj0hgkoio_o/0248google_m.jpg[/img]
[img]http://s5.depic.me/67556/w12jhgjblxh_o/0248google_t.jpg[/img]

File Name.type:  0248google.mp4
Resolution:  1280x720 
Duration:  0:05:44
Filesize:  169Mb

[b]Download
[url]https://k2s.cc/file/8c76web35b/0248google.mp4[/url][/b]
//==================
Subject message


[img]http://s6.depic.me/07396/uzpqptzh8rxl_o/0007start_m.jpg[/img]
[img]http://s7.depic.me/07156/puojhjh95tn_o/0007start_t.jpg[/img]

File Name.type:  0007start.mp4
Resolution:  1280x720 
Duration:  0:05:35
Filesize:  59Mb

[b]Download
[url]https://k2s.cc/file/28s76ds8d82/0007start.mp4[/url][/b]
//==================
Примечание: Домены в ссылках могут быть разными.

К скрипте я указываю путь/имя создаваемых файлов, а также маску имени файла в ссылке:
Код: Выделить весь код
firstpackuurl.txt
*start*

secondpackurl.txt
*yandex*
В результате выполнения скрипта, должны создаться два txt файла:

firstpackuurl.txt
Код: Выделить весь код
Subject message


[img]http://s7.depic.me/065676/cjb9jhkjhbm78_o/0087start_m.jpg[/img]
[img]http://s7.depic.me/07666/56ygjfjh7kikg_o/0087start_t.jpg[/img]

File Name.type:  0087start.wmv
Resolution:  640x480 
Duration:  0:53:20
Filesize:  311Mb

[b]Download
[url]https://k2s.cc/file/059we76456/0087start.mp4[/url][/b]
//==================
Subject message


[img]http://s6.depic.me/07396/uzpqptzh8rxl_o/0007start_m.jpg[/img]
[img]http://s7.depic.me/07156/puojhjh95tn_o/0007start_t.jpg[/img]

File Name.type:  0007start.mp4
Resolution:  1280x720 
Duration:  0:05:35
Filesize:  59Mb

[b]Download
[url]https://k2s.cc/file/28s76ds8d82/0007start.mp4[/url][/b]
//==================
secondpackurl.txt
Код: Выделить весь код
Subject message


[img]http://s5.depic.me/0686/zp0hjgh3m7d_o/0634yandex_m.jpg[/img]
[img]http://s6.depic.me/06876/26fhgh8kxo8_o/0634yandex_t.jpg[/img]

File Name.type:  0634yandex.avi
Resolution:  1920x1080 
Duration:  0:08:56
Filesize:  952Mb

[b]Download
[url]https://k2s.cc/file/f07we76wee3/0634yandex.mp4[/url][/b]
//==================

Отправлено: 06:51, 23-10-2018

 

Ветеран


Contributor


Сообщения: 2708
Благодарности: 1684

Профиль | Отправить PM | Цитировать


VBS
Код: Выделить весь код
FileIn = "Z:\Box_In\Большой txt файл.txt"
Delim = "//=================="
sURL = "[b]Download"

OutFiles = Array("start", "Z:\Box_Out\firstpackuurl.txt", _
                "yandex", "Z:\Box_Out\secondpackurl.txt", _
                "oszone", "Z:\Box_Out\для отладки несуществующего.txt", _
                "google", "Z:\Box_Out\thirdpackurl.txt")
i1 = LBound(OutFiles)
NFiles = Int(((UBound(OutFiles) - i1) + 1) / 2)

Set FSO = CreateObject("Scripting.FileSystemObject")

Set fIn = FSO.OpenTextFile(FileIn, 1, False)  ', -2)
Alls = fIn.ReadAll
fIn.Close

Mas = Split(Alls, Delim)
Set Alls = Nothing

ReDim OutTxt(NFiles)
For i = 1 To NFiles
    OutTxt(i) = ""
Next

For Each iMas In Mas
    iURL = Split(iMas, sURL)
    i2 = UBound(iURL)
    If i2 - i1 > 0 Then
        For i = 1 To NFiles
            ii = InStrRev(iURL(i2), OutFiles(2 * i - 2 + i1))
            If ii > 0 Then
                OutTxt(i) = OutTxt(i) + iMas + Delim
            End If
        Next
    End If
Next

For i = 1 To NFiles
    If Len(OutTxt(i)) <> 0 Then
        Set fIn = FSO.CreateTextFile(OutFiles(2 * i - 1 + i1), True)
        fIn.Write OutTxt(i)
        fIn.Close
    End If
Next

-------
Даже самая сложная проблема обязательно имеет простое, лёгкое для понимания, неправильное решение. Каждое решение плодит новые проблемы.

Это сообщение посчитали полезным следующие участники:

Отправлено: 15:52, 23-10-2018 | #2



Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети.

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


Ветеран


Сообщения: 531
Благодарности: 4

Профиль | Отправить PM | Цитировать


Спасибо, компьютер как назло сломался. На днях протестирую обязательно

Отправлено: 18:05, 26-10-2018 | #3


Ветеран


Сообщения: 531
Благодарности: 4

Профиль | Отправить PM | Цитировать


Проверил, все работает.. единственное, в каждом выводимом txt документе, в самом верху одна пустая строка.

Отправлено: 23:50, 25-11-2018 | #4



Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Скриптовые языки администрирования Windows » Любой язык - [решено] Разделение одного txt файла на несколько txt файлов

Участник сейчас на форуме Участник сейчас на форуме Участник вне форума Участник вне форума Автор темы Автор темы Шапка темы Сообщение прикреплено

Похожие темы
Название темы Автор Информация о форуме Ответов Последнее сообщение
Объединение/разделение txt файлов AlexeyN Программное обеспечение Windows 6 27-11-2012 09:40
VBS/WSH/JS - [решено] Экспорт данных из одного txt файла в другой TRaMeLL Скриптовые языки администрирования Windows 31 17-10-2012 11:33
CMD/BAT - вытащить из 3-x txt файлов строки в 4-й txt и отправить его в шару на сервер campbell Скриптовые языки администрирования Windows 1 10-11-2011 09:59
CMD/BAT - [решено] Созд.*.txt по имени файла, с перемещением *.txt и файла в папку с именем файла. OSArev Скриптовые языки администрирования Windows 2 30-01-2011 11:58
[решено] Вставить строчку из одного txt в оределённое место другого txt ZeroCrash AutoIt 7 13-07-2009 07:35




 
Переход