当前位置: 首页 > 面试题库 >

日期转换.NET JSON到ISO

翟曦之
2023-03-14
问题内容

如何从JSON.Net转换日期时间格式,例如:

/日期(1154970000000 + 0700)/

到ISO- ?? 格式2011-12-18T23:34:59Z

最好使用Python或Javascript。

Ive决定使用后者,因为它在JS世界中似乎是使用最广泛,人类可读且自然可排序的。我将按用户存储偏移量。

如果实现又有点问题,是否有人可以告诉我两种格式的正确名称,我可能会更不了解如何进行转换。


问题答案:
jsonDate = "/Date(1154970000000+0700)/";

var strDate = parseInt(jsonDate.replace(/\/Date\(([-\d]+).*$/, "$1"));
var strHour = parseInt(jsonDate.replace(/.*\d([+-]\d\d).*$/, "$1"), 10);
var strMin = parseInt(jsonDate.replace(/.*\d([+-])\d\d(\d\d).*$/, "$1$2"), 10);

var date = new Date(strDate);
if (!isNaN(strHour)) date.setHours(date.getHours() + strHour);
if (!isNaN(strMin)) date.setMinutes(date.getMinutes() + strMin);

var out = date.toISOString();

并将函数转换为ISO:

var toISOString = Date.prototype.toISOString ?
    function(d){return d}:
    (function(){
        function t(i){return i<10?"0"+i:i};
        function h(i){return i.length<2?"00"+i:i.length<3?"0"+i:3<i.length?Math.round(i/Math.pow(10,i.length-3)):i};
        function toISOString(){
            return "".concat(
                this.getUTCFullYear(), "-",
                t(this.getUTCMonth() + 1), "-",
                t(this.getUTCDate()), "T",
                t(this.getUTCHours()), ":",
                t(this.getUTCMinutes()), ":",
                t(this.getUTCSeconds()), ".",
                h("" + this.getUTCMilliseconds()), "Z"
            );
        };
        return function(d){
            d.toISOString = toISOString;
            return d;
        }
    })();


 类似资料:
  • 我们正在使用Spring Data JPA访问Derby-DB。时态值定义为java.time.LocalDate(java 8 time api)。Spring Data现在随Jsr310Convertersorg.springframework.data.convert.。将LocalDate转换为java.util.Date,因为据我所知,JPA规范到目前为止不支持LocalDate。 我们

  • 周日->明谷-0 周一->赛宁-1 周二->Selasa-2 帮我谢谢

  • 问题内容: 我正在以编程方式从ldap导出用户。因此,我正在从ldap检索用户。属性之一是。 我必须转换的值之一是:直接将其拆分成以下格式:+ 。问题在于应用程序正在CET时区运行,并且存储的时间是UTC,这可能由表示。是,并且本地表示形式是。夏季似乎是2个小时,而冬季是1个小时。 我检查了SimpleDateFormat,发现时区有一个占位符,但是它是不同的格式。 由于忽略日期时区,将显示错误的

  • 问题内容: 我的json 响应 包含一个 CreatedOn 日期: 我需要将 CreatedOn 转换为简单的日期格式,并 计算从CreatedOn日期到当前日期的差异天数。 当我调试下面的代码字符串 CreatedOn时 显示一个空值。怎么会? 问题答案: 要么 考虑使用JSON方法而不是包含。JSON具有“ has()”,用于验证密钥是否存在。 您还应该确保首先尝试{}捕获{}字符串,以确保

  • 问题内容: 我已经写了这个功能: 当我通过日期以及获取输出日期作为 我要去哪里的时候?还做什么,如果我想只得到和 任何帮助表示赞赏 问题答案: 找到以下解决方案…。发布它,因为它也可以帮助其他人:) 输出: 2014-04-24T11:15:00.000 + 02:00

  • 我一直试图从Salesforce查询转换日期字段,并将该记录插入到Oracle表中。我在格式上遇到了很多麻烦,因为输入被视为字符串,所以Date{format:“yyyy-mm-dd''hh:mm:ss”}不起作用。 最终我找到了一个答案,我想在这里分享它,因为它是一个字符串,可以通过字符串操作来解决。下面是我的答案:created_at:(payload.createddate splitby“