Перейти из форума на сайт.

НовостиФайловые архивы
ПоискАктивные темыТоп лист
ПравилаКто в on-line?
Вход Забыли пароль? Первый раз на этом сайте? Регистрация
Компьютерный форум Ru.Board » Компьютеры » Программы » Командная строка, батники, сценарии - bat, cmd

Модерирует : gyra, Maz

 Версия для печати • ПодписатьсяДобавить в закладки
На первую страницук этому сообщениюк последнему сообщению

Открыть новую тему     Написать ответ в эту тему

Okapulka

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Есть такой скрипт для озвучивания текущего времени:
Код:
function numtofixed(_number,_len){
  var s = _number.toString();
  while (s.length < _len)
    s="0"+s;
  return s;
}
 
var t = new Date();
var text = "";
 
if ( t.getMinutes() )  
    text = numtofixed(t.getHours(),2) + ":" + numtofixed(t.getMinutes(),2);
else {
    var hours_text = "часов";
    if ( t.getHours() == 1 || t.getHours() == 21 )
        hours_text = " час ";
    else if ( Math.floor(t.getHours() / 10) != 1 &&
        t.getHours() % 10 >= 2 &&  
        t.getHours() % 10 <= 4 )
        hours_text = " часа ";
    text = t.getHours() + " " + hours_text;
}
 
var speech = WScript.CreateObject("SPEECH.SpVoice");
speech.Speak(text);
Когда время с минутами — проговаривается как надо, а вот когда ноль минут — говорит что-то не то, типа: "Два градуса срс" (это когда 2:00).
Подскажите пожалуйста почему так происходит и как это побороть.

Всего записей: 171 | Зарегистр. 14-05-2016 | Отправлено: 02:05 27-08-2022 | Исправлено: Okapulka, 14:29 27-08-2022
Открыть новую тему     Написать ответ в эту тему

На первую страницук этому сообщениюк последнему сообщению

Компьютерный форум Ru.Board » Компьютеры » Программы » Командная строка, батники, сценарии - bat, cmd


Реклама на форуме Ru.Board.

Powered by Ikonboard "v2.1.7b" © 2000 Ikonboard.com
Modified by Ru.B0ard
© Ru.B0ard 2000-2024

BitCoin: 1NGG1chHtUvrtEqjeerQCKDMUi6S6CG4iC

Рейтинг.ru