在好例子网,分享、交流、成长!
您当前所在位置:首页js 开发实例JavaScript基础 → 时间转换工具源码(hta格式)

时间转换工具源码(hta格式)

JavaScript基础

下载此实例
  • 开发语言:js
  • 实例大小:2.50KB
  • 下载次数:7
  • 浏览次数:157
  • 发布时间:2019-07-12
  • 实例类别:JavaScript基础
  • 发 布 人:crazycode
  • 文件格式:.rar
  • 所需积分:2
 相关标签: hta 时间 工具 源码 转换

实例介绍

【实例简介】十进制、UTC转换等

【实例截图】

from clipboard

【核心代码】

<html>
    <head>
    <script type="text/javascript">
        window.resizeTo(780, 180);
    </script>
<HTA:APPLICATION ID="utctime"
APPLICATIONNAME="utctime"
BORDER="dialog"
BORDERSTYLE="normal"
INNERBORDER="no"
SCROLL="no"
CAPTION="yes"
ICON=""
MAXIMIZEBUTTON="no"
MINIMIZEBUTTON="no"
SHOWINTASKBAR="yes"
SINGLEINSTANCE="no"
SYSMENU="yes"
VERSION="1.0"/>
    
    <title>时间生成器</title>
    <style type="text/css">
            body { padding: 0; background: #ddd; }
            .text-year { width: 40px; }
            .text-cell { width: 20px; }
        </style>
<script>
/******************************************************************************
函数名称:toHex
函数功能:将15位以内(含15)的十进制数转换为十六进制数
参数说明:sString-待转换字符串
返回值  :null    - 参数非法或异常
          sResult - 转换结果
作者    :朱磊鑫 00110907 2007-11-27
******************************************************************************/
function toHex( sString )
{
    if(null == sString)
    {
        return null;
    }

    if(15 < sString.length)//字符串超长,15位以后整数转换不准确。
    {
        return null;
    }

    var sInteger = /^(0|([1-9] [0-9]*))$/;//整数正则表达式,不包含0开头。
    if(!sInteger.test(sString))
    {
        return null;
    }

    var iValue = parseInt(sString);
    if(0 > iValue)
    {
        return null;
    }
    if(0 == iValue)
    {
        return null;
    }

    var hexValue = [];//用于保存中间数。
    var i = 0;        //hexValue的写位置。
    var iQuotient;    //商
    var iRemainder;   //余数
    while(true)
    {
        iQuotient  = Math.floor(iValue/16);//商
        iRemainder = iValue%16;            //余数

        if(iQuotient < 16)                 //商小于16,为最后一次运算。需要记录商。
        {
            switch(iRemainder)
            {
                case 0: hexValue[i  ] = "0";break;
                case 1: hexValue[i  ] = "1";break;
                case 2: hexValue[i  ] = "2";break;
                case 3: hexValue[i  ] = "3";break;
                case 4: hexValue[i  ] = "4";break;
                case 5: hexValue[i  ] = "5";break;
                case 6: hexValue[i  ] = "6";break;
                case 7: hexValue[i  ] = "7";break;
                case 8: hexValue[i  ] = "8";break;
                case 9: hexValue[i  ] = "9";break;
                case 10:hexValue[i  ] = "A";break;
                case 11:hexValue[i  ] = "B";break;
                case 12:hexValue[i  ] = "C";break;
                case 13:hexValue[i  ] = "D";break;
                case 14:hexValue[i  ] = "E";break;
                case 15:hexValue[i  ] = "F";break;
                default:return null;//异常
            }
            switch(iQuotient)
            {
                case 0: hexValue[i  ] = "0";break;
                case 1: hexValue[i  ] = "1";break;
                case 2: hexValue[i  ] = "2";break;
                case 3: hexValue[i  ] = "3";break;
                case 4: hexValue[i  ] = "4";break;
                case 5: hexValue[i  ] = "5";break;
                case 6: hexValue[i  ] = "6";break;
                case 7: hexValue[i  ] = "7";break;
                case 8: hexValue[i  ] = "8";break;
                case 9: hexValue[i  ] = "9";break;
                case 10:hexValue[i  ] = "A";break;
                case 11:hexValue[i  ] = "B";break;
                case 12:hexValue[i  ] = "C";break;
                case 13:hexValue[i  ] = "D";break;
                case 14:hexValue[i  ] = "E";break;
                case 15:hexValue[i  ] = "F";break;
                default:return null;//异常
            }

            var sResult = Antitone(hexValue);
            return sResult;//数组反序为结果
        }

        else //继续除
        {
            iValue = iQuotient;//保存商
            switch(iRemainder)                          //保存余数
            {
                case 0: hexValue[i  ] = "0";break;
                case 1: hexValue[i  ] = "1";break;
                case 2: hexValue[i  ] = "2";break;
                case 3: hexValue[i  ] = "3";break;
                case 4: hexValue[i  ] = "4";break;
                case 5: hexValue[i  ] = "5";break;
                case 6: hexValue[i  ] = "6";break;
                case 7: hexValue[i  ] = "7";break;
                case 8: hexValue[i  ] = "8";break;
                case 9: hexValue[i  ] = "9";break;
                case 10:hexValue[i  ] = "A";break;
                case 11:hexValue[i  ] = "B";break;
                case 12:hexValue[i  ] = "C";break;
                case 13:hexValue[i  ] = "D";break;
                case 14:hexValue[i  ] = "E";break;
                case 15:hexValue[i  ] = "F";break;
                default:return null;//异常
            }
        }
    }
}

function Antitone( arrResult )
{
    if(null == arrResult)
    {
        return null;
    }
    var iLength = arrResult.length;
    var sResult = "";
    for(var i=iLength-1;i>=0;i--)
    {
        sResult = sResult.concat(arrResult[i]);//字符串合并出错!
    }
    return sResult;
}

function getHexTime(bIfNow)
{
    var iTime;
    if(!bIfNow)
    {
        //时间校验
        var sYear   = document.getElementById("1").value;
        var sMonth  = document.getElementById("2").value;
        var sDay    = document.getElementById("3").value;
        var sHour   = document.getElementById("4").value;
        var sMinute = document.getElementById("5").value;
        var sSecond = document.getElementById("6").value;

        var iYear   = parseInt(sYear,10);
        var iMonth  = parseInt(sMonth,10) - 1;
        var iDay    = parseInt(sDay,10);
        var iHour   = parseInt(sHour,10);
        var iMinute = parseInt(sMinute,10);
        var iSecond = parseInt(sSecond,10);
        var oTime = new Date(iYear, iMonth, iDay, iHour, iMinute, iSecond, 0);

        //alert("年:" iYear "\n月:" iMonth "\n日:" iDay "\n时:" iHour "\n分:" iMinute "\n秒:" iSecond);
        if (!isNaN(oTime)){
        	iTime = oTime.getTime()/1000;
        }
        else{
        	iTime=0;
        }
    }
    else
    {
        var oTimeNow = new Date();
        iTime = oTimeNow.getTime()/1000;
    }

    iTime = Math.floor(iTime);
    //iTime = toHex(iTime);
    if(null == iTime)
    {
        alert("非法时间,请重新输入。");
        return;
    }

    document.getElementById("result").value = iTime;
    clipboardData.setData('text', iTime.toString());
    alert("十进制格式时间:"   iTime   " 已经拷贝到剪贴板中。");
}
function checkTime(textId)
{
    var oText = document.getElementById(textId);
    if(oText.value.toString().length == oText.getAttribute("maxlength"))
	{
	    document.getElementById(textId).blur();
        if( textId < 6)
		{
			var newId = parseInt(textId) 1;
		    document.getElementById(newId).focus();
		}
		else
		{
		    getHexTime(false);
		    document.getElementById("result").focus();
		}
	}
}
function focused(Id)
{
    document.getElementById(Id).select();
}

function transTime()
{
	var iTime = parseInt(document.getElementById('7').value, 10);
	var oDate = new Date();
	oDate.setTime(iTime * 1000);

	if (!isNaN(oDate))
	{
		var sYear = oDate.getFullYear();
		var sMonth = oDate.getMonth()   1;
		var sDate = oDate.getDate();
		var sHour = oDate.getHours();
		var sMinute = oDate.getMinutes();
		var sSecond = oDate.getSeconds();

		var sTime = sYear   "-"   addZero(sMonth)   "-"   addZero(sDate)   " "
										     addZero(sHour)   ":"   addZero(sMinute)   ":"   addZero(sSecond);
		document.getElementById('8').value = sTime;
		clipboardData.setData('text', sTime);
		alert("YYYY-MM-DD HH:MM:SS格式时间:"   sTime   " 已经拷贝到剪贴板中。");
	}
}

function addZero(ii)
{
	if (ii < 10 && ii >=0)
	{
		return "0"   ii;
	}
	else
		{
			return ii;
		}
}
</script>
</head>
<body>
<input type="button" value="当前时间" onclick="getHexTime(true);">
<br><br>
<span>请输入时间:</span>
<input type="text" class="text-year" size="1" maxlength="4" id="1" onfocus="focused('1')" onkeyup="checkTime('1');"></input><span>年</span>
<input type="text" class="text-cell" size="1" maxlength="2" id="2" onfocus="focused('2')" onkeyup="checkTime('2');"></input><span>月</span>
<input type="text" class="text-cell" size="1" maxlength="2" id="3" onfocus="focused('3')" onkeyup="checkTime('3');"></input><span>日</span>
<input type="text" class="text-cell" size="1" maxlength="2" id="4" onfocus="focused('4')" onkeyup="checkTime('4');"></input><span>时</span>
<input type="text" class="text-cell" size="1" maxlength="2" id="5" onfocus="focused('5')" onkeyup="checkTime('5');"></input><span>分</span>
<input type="text" class="text-cell" size="1" maxlength="2" id="6" onfocus="focused('6')" onkeyup="checkTime('6');"></input><span>秒</span>
&nbsp;&nbsp;
<input type="button" value="计算时间" onclick="getHexTime(false);">
<span>十进制表示</span>
<input type="text" maxlength="15" id="result" class="text-field"></input>
<p><p>
<span>请输入UTC秒数:</span>
<input type="text" maxlength="10" id="7" class="text-field"/>
<input type="button" value="转换时间" onclick="transTime();"/>
<input type="text" maxlength="19" id="8" class="text-field"/>
</body>
</html>

实例下载地址

时间转换工具源码(hta格式)

不能下载?内容有错? 点击这里报错 + 投诉 + 提问

好例子网口号:伸出你的我的手 — 分享

网友评论

发表评论

(您的评论需要经过审核才能显示)

查看所有0条评论>>

小贴士

感谢您为本站写下的评论,您的评论对其它用户来说具有重要的参考价值,所以请认真填写。

  • 类似“顶”、“沙发”之类没有营养的文字,对勤劳贡献的楼主来说是令人沮丧的反馈信息。
  • 相信您也不想看到一排文字/表情墙,所以请不要反馈意义不大的重复字符,也请尽量不要纯表情的回复。
  • 提问之前请再仔细看一遍楼主的说明,或许是您遗漏了。
  • 请勿到处挖坑绊人、招贴广告。既占空间让人厌烦,又没人会搭理,于人于己都无利。

关于好例子网

本站旨在为广大IT学习爱好者提供一个非营利性互相学习交流分享平台。本站所有资源都可以被免费获取学习研究。本站资源来自网友分享,对搜索内容的合法性不具有预见性、识别性、控制性,仅供学习研究,请务必在下载后24小时内给予删除,不得用于其他任何用途,否则后果自负。基于互联网的特殊性,平台无法对用户传输的作品、信息、内容的权属或合法性、安全性、合规性、真实性、科学性、完整权、有效性等进行实质审查;无论平台是否已进行审查,用户均应自行承担因其传输的作品、信息、内容而可能或已经产生的侵权或权属纠纷等法律责任。本站所有资源不代表本站的观点或立场,基于网友分享,根据中国法律《信息网络传播权保护条例》第二十二与二十三条之规定,若资源存在侵权或相关问题请联系本站客服人员,点此联系我们。关于更多版权及免责申明参见 版权及免责申明

;
报警