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

Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Скриптовые языки администрирования Windows » VBS/WSH/JS - Изменение времени строк в текстовом файле на определенную величину

Ответить
Настройки темы
VBS/WSH/JS - Изменение времени строк в текстовом файле на определенную величину

Новый участник


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

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


Добрый день!

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

Пример файла:

Код: Выделить весь код
17.07.2012 00:19:00	""
17.07.2012 00:52:00	""
17.07.2012 01:19:00	""
17.07.2012 01:52:00	""
17.07.2012 02:19:00	""
17.07.2012 02:52:00	""
17.07.2012 03:19:00	""
17.07.2012 03:52:00	""
17.07.2012 04:19:00	""
17.07.2012 04:52:00	""
и т. д. до 24 часов
Необходимо увеличить время на четыре часа:

Код: Выделить весь код
17.07.2012 04:19:00	""
17.07.2012 04:52:00	""
17.07.2012 05:19:00	""
17.07.2012 05:52:00	""
17.07.2012 06:19:00	""
17.07.2012 06:52:00	""
17.07.2012 07:19:00	""
17.07.2012 07:52:00	""
17.07.2012 08:19:00	""
17.07.2012 08:52:00	""

и т. д.
Форматы файлов неизменны, кодировка неизменна (CP1251).

Заранее спасибо.

Отправлено: 11:01, 31-07-2012

 

Старожил


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

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


Пример для обработки одной строки:
Код: Выделить весь код
strTemp = "17.07.2012 20:52:00	"""""
arrTemp = Split(strTemp, ":00")
strTemp = DateAdd("h", 4, arrTemp(0))
WScript.Echo FormatDateTime(strTemp, 2) & " " & FormatDateTime(strTemp, 4) & ":00" & arrTemp(1)
С файловыми операциями и циклом самостоятельно управитесь?
Это сообщение посчитали полезным следующие участники:

Отправлено: 12:21, 31-07-2012 | #2



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

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


Новый участник


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

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


Спасибо большое!

Самостоятельно не управлюсь :-(. Только учусь.

Отправлено: 12:38, 31-07-2012 | #3


Старожил


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

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


Например, так:
Код: Выделить весь код
Dim objFS, objFile, arrData, arrTemp, strTemp
strPath = "D:\Temp\log.txt"
Set objFS = CreateObject("Scripting.FileSystemObject")
If objFS.FileExists(strPath) Then
    Set objFile = objFS.OpenTextFile(strPath, 1)
    arrData = Split(objFile.ReadAll, vbNewLine)
    objFile.Close
    For i = 0 To UBound(arrData)
        If Len(arrData(i)) > 0 Then
            If InStr(arrData(i), ":00") > 0 Then
                arrTemp = Split(arrData(i), ":00")
                strTemp = DateAdd("h", 4, arrTemp(0))
                arrData(i) = FormatDateTime(strTemp, 2) & " " & FormatDateTime(strTemp, 4) & ":00" & arrTemp(1)
            End If
        End If
    Next
    Set objFile = objFS.OpenTextFile(strPath, 2, True)
    For i = 0 To UBound(arrData)
        objFile.WriteLine arrData(i)
    Next
    Erase arrData
    objFile.Close
    Set objFile = Nothing
    WScript.Echo "Готово."
Else
    WScript.Echo "Не найден путь " & strPath
End If
Set objFS = Nothing
WScript.Quit 0
Это сообщение посчитали полезным следующие участники:

Отправлено: 15:23, 31-07-2012 | #4


Новый участник


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

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


Спасибо большое!

Работает!!!! Буду разбирать построчно и "мотать на ус".

Отправлено: 15:43, 31-07-2012 | #5


Пользователь


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

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


Было бы неплохо увидеть это в комманд-шелле

Отправлено: 17:10, 31-07-2012 | #6


Ветеран


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

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


Цитата NoIZz:
Было бы неплохо увидеть это в комманд-шелле »
Зачем?

Отправлено: 20:22, 31-07-2012 | #7



Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Скриптовые языки администрирования Windows » VBS/WSH/JS - Изменение времени строк в текстовом файле на определенную величину

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

Похожие темы
Название темы Автор Информация о форуме Ответов Последнее сообщение
CMD/BAT - [решено] Удаление строк в текстовом файле, как это сделать??? VladZombie Скриптовые языки администрирования Windows 70 08-09-2020 13:28
CMD/BAT - Подсчет количества строк в текстовом файле sl1mus Скриптовые языки администрирования Windows 3 28-06-2012 21:29
В текстовом файле 1500 строк и 14 слов отображаются крякозябрами kigerman Хочу все знать 9 26-03-2012 10:10
CMD/BAT - [решено] Изменение переменных в текстовом файле средствами bat men232 Скриптовые языки администрирования Windows 1 29-11-2010 03:30
подсчёт слов в текстовом файле bakatum Хочу все знать 4 22-01-2010 21:10




 
Переход