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

Показать сообщение отдельно

Ветеран


Contributor


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

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


vbs-скрипт
Код: Выделить весь код
    InFile = "D:\Примеры макроса\Для тестирования 10000.txt"        ' Путь к текстовому файлу
    
    Set FSO = CreateObject("Scripting.FileSystemObject")
    
    EndBottom = "}"                                     ' Вставляем символ(ы) в конец каждой строки
    InSave = 1                                          ' =0 -Не сохраним копию исходного файла, не 0 -сохраним
    
' Если надо сохранить исходный файл в .bak
    
    If InSave <> 0 Then
        On Error Resume Next
        Set F1 = FSO.GetFile(InFile)
        If Err.Number = 0 Then
            F1.Copy InFile + ".bak"
            F1.Close
        End If
    End If

' Читаем исходный файл, переписываем строки в tmp-файл, переименовываем tmp
Set F1 = FSO.OpenTextFile(InFile, 1, False)

On Error Resume Next
Set F2 = FSO.OpenTextFile(InFile + ".tmp", 2, True)

BegTop = ""
If Err.Number = 0 Then
        Messa = CStr(Time) + "  Обработка начата" + Chr(13) + Chr(10)
        Do While Not F1.AtEndOfStream
            iString = F1.ReadLine
            F2.Write BegTop + iString + EndBottom
            BegTop = vbCrLf
        Loop
        F1.Close
        F2.Close
        
        On Error Resume Next
        FSO.CopyFile InFile + ".tmp", InFile, True
        If Err.Number = 0 Then
            FSO.DeleteFile InFile + ".tmp", True
        Else
            Messa = Messa + CStr(Time) + "  Не удалось скопировать TMP" + Chr(13) + Chr(10)
        End If
Else
    Messa = Messa + "Ошибка при открытии файла " + Chr(13) + Chr(10) + InFile + ".tmp" + Chr(13) + Chr(10) + Err.Description + Chr(13) + Chr(10)
End If

Messa = Messa + CStr(Time) + "  Обработка закончена" + Chr(13) + Chr(10)
L = MsgBox(Messa, 0, "Обработка " + InFile)

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

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

Отправлено: 13:28, 30-09-2012 | #3