Компьютерный форум OSzone.net  

Компьютерный форум OSzone.net (http://forum.oszone.net/index.php)
-   Скриптовые языки администрирования Windows (http://forum.oszone.net/forumdisplay.php?f=102)
-   -   Копирование строки из одного файла, и запись его в другой (при условии) (http://forum.oszone.net/showthread.php?t=333257)

Reanosi 18-02-2018 15:26 2798789

Копирование строки из одного файла, и запись его в другой (при условии)
 
Добрый вечер. Опять нуждаюсь в помощи. Необходимо копировать первую строку из одного текстового файла (переодически изменяющегося), в другой с новой строки, при условии, что такой строки еще пока нет в файле.

megaloman 18-02-2018 20:47 2798826

vbs. C cmd для работы с текстами не советую связываться
Код:

File1 = "Z:\Box_In\Один текстовый файл.txt"
File2 = "Z:\Box_Out\Другой текстовай файл.txt"

Set FSO = CreateObject("Scripting.FileSystemObject")

On Error Resume Next
Set inFile = FSO.OpenTextFile(File1, 1)
If Err.Number <> 0 Then
    MsgBox File1 + vbCrLf + Err.Description
    WScript.Quit 1
End If
On Error GoTo 0

String1 = inFile.ReadLine
inFile.Close

On Error Resume Next
Set inFile = FSO.OpenTextFile(File2, 1, True)
If Err.Number <> 0 Then
    MsgBox File2 + vbCrLf + Err.Description
    WScript.Quit 1
End If
String2 = inFile.ReadAll
If Err.Number <> 0 Then
    String2 = ""
End If
On Error GoTo 0
inFile.Close

N = InStr(1, String2, String1)
If N <= 0 Then
    On Error Resume Next
    Set inFile = FSO.OpenTextFile(File2, 8, True)
    If Err.Number <> 0 Then
        MsgBox File2 + vbCrLf + Err.Description
        WScript.Quit 1
    End If
    On Error GoTo 0
    If Right(String1, 2) <> vbCrLf And String2 <> "" Then String1 = vbCrLf + String1
    inFile.Write String1
End If
inFile.Close


Reanosi 18-02-2018 22:31 2798846

Супер. Спасибо.


Время: 09:50.

Время: 09:50.
© OSzone.net 2001-