powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / HTML, JavaScript, VBScript, CSS [игнор отключен] [закрыт для гостей] / javascrip: вместо 1 августа 1 декабря
21 сообщений из 21, страница 1 из 1
javascrip: вместо 1 августа 1 декабря
    #38352440
Джек
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Добрый день всем.
Я написал скрипт, который извлекает события из журнала и сохраняет их в файле. До 1 августа дата отображалась правильно, а с 1 августа вместо августа стал декабрь и время стало на час меньше.
Вот код как я извлекаю время события:
...
function getDate2String(d) {
var dateStr = padStr(d.getFullYear()) +"-"+
padStr(1 + d.getMonth()) +"-"+
padStr(d.getDate()) +" "+
padStr(d.getHours()) +":"+
padStr(d.getMinutes()) +":"+
padStr(d.getSeconds());
return dateStr;
}
...
...
var arr = String(objLogFile.TimeGenerated).split('.');
y = arr[0].substr(0, 4);
m = arr[0].substr(4, 2);
dd = arr[0].substr(6, 2);
h = arr[0].substr(8, 2);
min = arr[0].substr(10, 2);
s = arr[0].substr(12, 2);
ms = arr[1].substr(0, 3);
var d = Date.UTC(y, parseInt(m) - 1, dd, h, min, s, ms);
var nd = new Date(d);
DataList("TimeGenerated") = getDate2String(nd);
...
Заранее большое спасибо.
...
Рейтинг: 0 / 0
javascrip: вместо 1 августа 1 декабря
    #38352463
Фотография Паганель
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
покажите пример тестовых данных
...
Рейтинг: 0 / 0
javascrip: вместо 1 августа 1 декабря
    #38352794
Джек
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
29 июля 2013 г. 8:56:04
29 июля 2013 г. 8:56:04
29 июля 2013 г. 8:56:05
1 декабря 2012 г. 7:51:32
1 декабря 2012 г. 7:51:33
1 декабря 2012 г. 7:51:33
...
...
Рейтинг: 0 / 0
javascrip: вместо 1 августа 1 декабря
    #38352801
Фотография Паганель
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Да нет
Не результат, а исходные данные
...
Рейтинг: 0 / 0
javascrip: вместо 1 августа 1 декабря
    #38352814
Джек
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
а вот события:
...
Рейтинг: 0 / 0
javascrip: вместо 1 августа 1 декабря
    #38352842
Фотография Паганель
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ерунда какая-то
вот запустите для начала
Код: javascript
1.
2.
3.
var arr = String('01.08.2013 14:33:12').split('.');
y = arr[0].substr(0, 4);
alert(y);

Какой год получился?


да, а что такое padStr?
...
Рейтинг: 0 / 0
javascrip: вместо 1 августа 1 декабря
    #38352854
Джек
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
в вашем коде получилось:
01
а padStr вот:
function padStr(i) {
return (i < 10) ? "0" + i : "" + i;
}
...
...
Рейтинг: 0 / 0
javascrip: вместо 1 августа 1 декабря
    #38352859
Фотография Паганель
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Джекв вашем коде получилось:Если Вы не заметили, этот код на 99% Ваш
Я всего лишь тестовые данные подставил
Тоже, кстати, Ваши
...
Рейтинг: 0 / 0
javascrip: вместо 1 августа 1 декабря
    #38352889
Джек
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
если вы думаете что Время события считывается так же как он отображено в журнале, то вы заблуждаетесь, вот пример как оно считывается:
20130801025132.000000-000
...
...
Рейтинг: 0 / 0
javascrip: вместо 1 августа 1 декабря
    #38352899
Фотография Паганель
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
наконец-то
щаз попробуем
...
Рейтинг: 0 / 0
javascrip: вместо 1 августа 1 декабря
    #38352905
Фотография Паганель
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Итак, создадим нормальный работающий пример
http://jsfiddle.net/RTnb2/
Выводится первое августа, в чем проблема?
...
Рейтинг: 0 / 0
javascrip: вместо 1 августа 1 декабря
    #38352909
Джек
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
можете сами убедиться (если у вас , конечно, не линукс), вот это выполните для какого-нибудь журнала:
strComputer = ".";
var objWMIService = GetObject("winmgmts:{impersonationLevel=impersonate,(Security)}!\\\\" + strComputer + "\\root\\cimv2");
var colLoggedEvents = objWMIService.ExecQuery ("Select * from Win32_NTLogEvent " + "Where Logfile='" + logname) ;
for (var enumItems = new Enumerator(colLoggedEvents); !enumItems.atEnd(); enumItems.moveNext())
{
var objLogFile = enumItems.item();
WScript.Echo(String(objLogFile.TimeGenerated));
}
через cscript.exe запустите...
...
Рейтинг: 0 / 0
javascrip: вместо 1 августа 1 декабря
    #38352924
Фотография Паганель
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
результат:

D:\tmp\1.vbs(1, 18) Microsoft VBScript compilation error: Expected end of statement


--------------------------------
тут это... такое дело... я VBScript не знаю, я думал вопрос по javascript...
...
Рейтинг: 0 / 0
javascrip: вместо 1 августа 1 декабря
    #38352927
Джек
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
открыл вашу ссылку, вот чё увидел:
...
Рейтинг: 0 / 0
javascrip: вместо 1 августа 1 декабря
    #38352938
Фотография Паганель
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
хм, на 10-м нормально, а если включить режим 8-го то да
может, баг старого IE...
...
Рейтинг: 0 / 0
javascrip: вместо 1 августа 1 декабря
    #38352939
Джек
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
дак это javascript и есть, про WSH ...
...
Рейтинг: 0 / 0
javascrip: вместо 1 августа 1 декабря
    #38352943
Джек
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
мне кажется тут проблема в таймзоне, у вас она другая...
...
Рейтинг: 0 / 0
javascrip: вместо 1 августа 1 декабря
    #38352959
Фотография Паганель
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Тьфу блин, позор мне, слона не заметил
http://javascript.ru/parseInt

Не зря JSLint на это ругается
...
Рейтинг: 0 / 0
javascrip: вместо 1 августа 1 декабря
    #38373123
Джек
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ПаганельТьфу блин, позор мне, слона не заметил
http://javascript.ru/parseInt

Не зря JSLint на это ругается
Спасибо большое, поскольку подстрока с 0 начинается, то parseInt в восмеричной системе преобразование делает, а август восьмой месяц, а цифры восемь в восьмеричной системе нет.
...
Рейтинг: 0 / 0
javascrip: вместо 1 августа 1 декабря
    #38373156
Gustly
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А зачем вообще делать parseInt?

Для данной задачи имхо лучше сделать просто *1
<var m = "08"
<console.log(m*1)
>8
...
Рейтинг: 0 / 0
javascrip: вместо 1 августа 1 декабря
    #38373192
Джек
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Gustly,

Это уже неважно, проблема была в том, что я незнал почему с августа дата начала отображаться неправильно...
...
Рейтинг: 0 / 0
21 сообщений из 21, страница 1 из 1
Форумы / HTML, JavaScript, VBScript, CSS [игнор отключен] [закрыт для гостей] / javascrip: вместо 1 августа 1 декабря
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]