是这样,
我一个Timestamp型数据 比如 2013-10-16 11:50:00
经json转化后传递到js里 长度不对。
正常是13818954000 但转换后确多了2个0
由于结构,在action这层转化不现实,只得在js里面转换。
开始想到多2个0,我可以截取,但我试了其他时间 长度都不一样现在碰到的问题是  转换过后的 字符串型,怎么知道多长才是正确的?timestampjsonjs

解决方案 »

  1.   

    2013-10-16 11:50:00是怎么转成13818954000的?
    你是先把Timestamp转成json在传到js里面,然后是要干吗?
      

  2.   

    正常转化的话应该不会多两个0的,所以很想知道你转换的方式我感觉你的问题应该是输入格式不一样,
    比如有的输入2013-10-16 11:50:00
    有的输入
    2013年10月25日22:07:19
    这样吧。导致导出不一样?
    JS中timestamp的转换成data
    http://blog.163.com/lijy_980720@126/blog/static/75574626201261783343834/
      

  3.   


    在获取这个值是还是显示2013—10..这个值 
    经过 JSONArray jsonArray = JSONArray.fromObject(list); 这个转化后就变成这个了
      

  4.   

    正常转化的话应该不会多两个0的,所以很想知道你转换的方式我感觉你的问题应该是输入格式不一样,
    比如有的输入2013-10-16 11:50:00
    有的输入
    2013年10月25日22:07:19
    这样吧。导致导出不一样?
    JS中timestamp的转换成data
    http://blog.163.com/lijy_980720@126/blog/static/75574626201261783343834/输入格式没问题 ,我只是一个对象,里面有这个属性的字段,然后是多个此类对象 放在list里,
    直接通过JSONArray jsonArray = JSONArray.fromObject(list);转的,打印出来的就多0
      

  5.   

    正常转化的话应该不会多两个0的,所以很想知道你转换的方式我感觉你的问题应该是输入格式不一样,
    比如有的输入2013-10-16 11:50:00
    有的输入
    2013年10月25日22:07:19
    这样吧。导致导出不一样?
    JS中timestamp的转换成data
    http://blog.163.com/lijy_980720@126/blog/static/75574626201261783343834/输入格式没问题 ,我只是一个对象,里面有这个属性的字段,然后是多个此类对象 放在list里,
    直接通过JSONArray jsonArray = JSONArray.fromObject(list);转的,打印出来的就多0
    你把这一段的代码发上来我测试下,我相信json不会犯这么低级的错误,转换时间后竟然多两个0.
    即使多个对象,也会以,来分开的
      

  6.   

    输入格式没问题 ,我只是一个对象,里面有这个属性的字段--这个属性的类型是什么?java.util.Date?
      

  7.   

    正常转化的话应该不会多两个0的,所以很想知道你转换的方式我感觉你的问题应该是输入格式不一样,
    比如有的输入2013-10-16 11:50:00
    有的输入
    2013年10月25日22:07:19
    这样吧。导致导出不一样?
    JS中timestamp的转换成data
    http://blog.163.com/lijy_980720@126/blog/static/75574626201261783343834/输入格式没问题 ,我只是一个对象,里面有这个属性的字段,然后是多个此类对象 放在list里,
    直接通过JSONArray jsonArray = JSONArray.fromObject(list);转的,打印出来的就多0
    你把这一段的代码发上来我测试下,我相信json不会犯这么低级的错误,转换时间后竟然多两个0.
    即使多个对象,也会以,来分开的 list1 = tar.queryor(); //这是查询一层,是没问题的

    JSONArray jsonArray = JSONArray.fromObject(list1); //这是转换
    比如CreateTime字段 :
    System.out.println(list1.get(1).getCreateTime());
              打印结果为:2013-10-16 11:50:00.0
                    System.out.println(jsonArray);
    打印结果(CreateTime字段): "createTime":{"date":16,"day":3,"hours":11,"minutes":50,"month":9,"nanos":0,"seconds":0,"time":1381895400000,"timezoneOffset":-480,"year":113},
                     
      

  8.   

    正常转化的话应该不会多两个0的,所以很想知道你转换的方式我感觉你的问题应该是输入格式不一样,
    比如有的输入2013-10-16 11:50:00
    有的输入
    2013年10月25日22:07:19
    这样吧。导致导出不一样?
    JS中timestamp的转换成data
    http://blog.163.com/lijy_980720@126/blog/static/75574626201261783343834/输入格式没问题 ,我只是一个对象,里面有这个属性的字段,然后是多个此类对象 放在list里,
    直接通过JSONArray jsonArray = JSONArray.fromObject(list);转的,打印出来的就多0
    你把这一段的代码发上来我测试下,我相信json不会犯这么低级的错误,转换时间后竟然多两个0.
    即使多个对象,也会以,来分开的 list1 = tar.queryor(); //这是查询一层,是没问题的

    JSONArray jsonArray = JSONArray.fromObject(list1); //这是转换
    比如CreateTime字段 :
    System.out.println(list1.get(1).getCreateTime());
              打印结果为:2013-10-16 11:50:00.0
                    System.out.println(jsonArray);
    打印结果(CreateTime字段): "createTime":{"date":16,"day":3,"hours":11,"minutes":50,"month":9,"nanos":0,"seconds":0,"time":1381895400000,"timezoneOffset":-480,"year":113},
                     
    JSONArray jsonArray = JSONArray.fromObject(list1); //这是转换
    正常转化的话应该不会多两个0的,所以很想知道你转换的方式我感觉你的问题应该是输入格式不一样,
    比如有的输入2013-10-16 11:50:00
    有的输入
    2013年10月25日22:07:19
    这样吧。导致导出不一样?
    JS中timestamp的转换成data
    http://blog.163.com/lijy_980720@126/blog/static/75574626201261783343834/输入格式没问题 ,我只是一个对象,里面有这个属性的字段,然后是多个此类对象 放在list里,
    直接通过JSONArray jsonArray = JSONArray.fromObject(list);转的,打印出来的就多0
    你把这一段的代码发上来我测试下,我相信json不会犯这么低级的错误,转换时间后竟然多两个0.
    即使多个对象,也会以,来分开的 list1 = tar.queryor(); //这是查询一层,是没问题的

    JSONArray jsonArray = JSONArray.fromObject(list1); //这是转换
    比如CreateTime字段 :
    System.out.println(list1.get(1).getCreateTime());
              打印结果为:2013-10-16 11:50:00.0
                    System.out.println(jsonArray);
    打印结果(CreateTime字段): "createTime":{"date":16,"day":3,"hours":11,"minutes":50,"month":9,"nanos":0,"seconds":0,"time":1381895400000,"timezoneOffset":-480,"year":113},
                     
    JSONArray jsonArray = JSONArray.fromObject(list1); //这是转换
    这里,你把输入的
    list1的值
    和输出的jsonArray的值
    发出来
      

  9.   

    正常转化的话应该不会多两个0的,所以很想知道你转换的方式我感觉你的问题应该是输入格式不一样,
    比如有的输入2013-10-16 11:50:00
    有的输入
    2013年10月25日22:07:19
    这样吧。导致导出不一样?
    JS中timestamp的转换成data
    http://blog.163.com/lijy_980720@126/blog/static/75574626201261783343834/输入格式没问题 ,我只是一个对象,里面有这个属性的字段,然后是多个此类对象 放在list里,
    直接通过JSONArray jsonArray = JSONArray.fromObject(list);转的,打印出来的就多0
    你把这一段的代码发上来我测试下,我相信json不会犯这么低级的错误,转换时间后竟然多两个0.
    即使多个对象,也会以,来分开的 list1 = tar.queryor(); //这是查询一层,是没问题的

    JSONArray jsonArray = JSONArray.fromObject(list1); //这是转换
    比如CreateTime字段 :
    System.out.println(list1.get(1).getCreateTime());
              打印结果为:2013-10-16 11:50:00.0
                    System.out.println(jsonArray);
    打印结果(CreateTime字段): "createTime":{"date":16,"day":3,"hours":11,"minutes":50,"month":9,"nanos":0,"seconds":0,"time":1381895400000,"timezoneOffset":-480,"year":113},
                     
    JSONArray jsonArray = JSONArray.fromObject(list1); //这是转换
    正常转化的话应该不会多两个0的,所以很想知道你转换的方式我感觉你的问题应该是输入格式不一样,
    比如有的输入2013-10-16 11:50:00
    有的输入
    2013年10月25日22:07:19
    这样吧。导致导出不一样?
    JS中timestamp的转换成data
    http://blog.163.com/lijy_980720@126/blog/static/75574626201261783343834/输入格式没问题 ,我只是一个对象,里面有这个属性的字段,然后是多个此类对象 放在list里,
    直接通过JSONArray jsonArray = JSONArray.fromObject(list);转的,打印出来的就多0
    你把这一段的代码发上来我测试下,我相信json不会犯这么低级的错误,转换时间后竟然多两个0.
    即使多个对象,也会以,来分开的 list1 = tar.queryor(); //这是查询一层,是没问题的

    JSONArray jsonArray = JSONArray.fromObject(list1); //这是转换
    比如CreateTime字段 :
    System.out.println(list1.get(1).getCreateTime());
              打印结果为:2013-10-16 11:50:00.0
                    System.out.println(jsonArray);
    打印结果(CreateTime字段): "createTime":{"date":16,"day":3,"hours":11,"minutes":50,"month":9,"nanos":0,"seconds":0,"time":1381895400000,"timezoneOffset":-480,"year":113},
                     
    JSONArray jsonArray = JSONArray.fromObject(list1); //这是转换
    这里,你把输入的
    list1的值
    和输出的jsonArray的值
    发出来jsonArray 的值 
    {"accountID":2,"createTime":{"date":16,"day":3,"hours":11,"minutes":50,"month":9,"nanos":0,"seconds":0,"time":1381895400000,"timezoneOffset":-480,"year":113},"createUser":2,"deleteTime":null,"deleteUser":1,"deleted":false,"description":"1111","email":"[email protected]","icon":"111","name":"222","phone":"111","photo":"1111","serialNumber":"serialNumber","speedLimit":2,"status":1,"targetID":2,"type":2,"updateTime":null,"updateUser":2,"userID":2}
      

  10.   

    正常转化的话应该不会多两个0的,所以很想知道你转换的方式我感觉你的问题应该是输入格式不一样,
    比如有的输入2013-10-16 11:50:00
    有的输入
    2013年10月25日22:07:19
    这样吧。导致导出不一样?
    JS中timestamp的转换成data
    http://blog.163.com/lijy_980720@126/blog/static/75574626201261783343834/输入格式没问题 ,我只是一个对象,里面有这个属性的字段,然后是多个此类对象 放在list里,
    直接通过JSONArray jsonArray = JSONArray.fromObject(list);转的,打印出来的就多0
    你把这一段的代码发上来我测试下,我相信json不会犯这么低级的错误,转换时间后竟然多两个0.
    即使多个对象,也会以,来分开的 list1 = tar.queryor(); //这是查询一层,是没问题的

    JSONArray jsonArray = JSONArray.fromObject(list1); //这是转换
    比如CreateTime字段 :
    System.out.println(list1.get(1).getCreateTime());
              打印结果为:2013-10-16 11:50:00.0
                    System.out.println(jsonArray);
    打印结果(CreateTime字段): "createTime":{"date":16,"day":3,"hours":11,"minutes":50,"month":9,"nanos":0,"seconds":0,"time":1381895400000,"timezoneOffset":-480,"year":113},
                     
    JSONArray jsonArray = JSONArray.fromObject(list1); //这是转换
    正常转化的话应该不会多两个0的,所以很想知道你转换的方式我感觉你的问题应该是输入格式不一样,
    比如有的输入2013-10-16 11:50:00
    有的输入
    2013年10月25日22:07:19
    这样吧。导致导出不一样?
    JS中timestamp的转换成data
    http://blog.163.com/lijy_980720@126/blog/static/75574626201261783343834/输入格式没问题 ,我只是一个对象,里面有这个属性的字段,然后是多个此类对象 放在list里,
    直接通过JSONArray jsonArray = JSONArray.fromObject(list);转的,打印出来的就多0
    你把这一段的代码发上来我测试下,我相信json不会犯这么低级的错误,转换时间后竟然多两个0.
    即使多个对象,也会以,来分开的 list1 = tar.queryor(); //这是查询一层,是没问题的

    JSONArray jsonArray = JSONArray.fromObject(list1); //这是转换
    比如CreateTime字段 :
    System.out.println(list1.get(1).getCreateTime());
              打印结果为:2013-10-16 11:50:00.0
                    System.out.println(jsonArray);
    打印结果(CreateTime字段): "createTime":{"date":16,"day":3,"hours":11,"minutes":50,"month":9,"nanos":0,"seconds":0,"time":1381895400000,"timezoneOffset":-480,"year":113},
                     
    JSONArray jsonArray = JSONArray.fromObject(list1); //这是转换
    这里,你把输入的
    list1的值
    和输出的jsonArray的值
    发出来jsonArray 的值 
    {"accountID":2,"createTime":{"date":16,"day":3,"hours":11,"minutes":50,"month":9,"nanos":0,"seconds":0,"time":1381895400000,"timezoneOffset":-480,"year":113},"createUser":2,"deleteTime":null,"deleteUser":1,"deleted":false,"description":"1111","email":"[email protected]","icon":"111","name":"222","phone":"111","photo":"1111","serialNumber":"serialNumber","speedLimit":2,"status":1,"targetID":2,"type":2,"updateTime":null,"updateUser":2,"userID":2}
      

  11.   

    正常转化的话应该不会多两个0的,所以很想知道你转换的方式我感觉你的问题应该是输入格式不一样,
    比如有的输入2013-10-16 11:50:00
    有的输入
    2013年10月25日22:07:19
    这样吧。导致导出不一样?
    JS中timestamp的转换成data
    http://blog.163.com/lijy_980720@126/blog/static/75574626201261783343834/输入格式没问题 ,我只是一个对象,里面有这个属性的字段,然后是多个此类对象 放在list里,
    直接通过JSONArray jsonArray = JSONArray.fromObject(list);转的,打印出来的就多0
    你把这一段的代码发上来我测试下,我相信json不会犯这么低级的错误,转换时间后竟然多两个0.
    即使多个对象,也会以,来分开的 list1 = tar.queryor(); //这是查询一层,是没问题的

    JSONArray jsonArray = JSONArray.fromObject(list1); //这是转换
    比如CreateTime字段 :
    System.out.println(list1.get(1).getCreateTime());
              打印结果为:2013-10-16 11:50:00.0
                    System.out.println(jsonArray);
    打印结果(CreateTime字段): "createTime":{"date":16,"day":3,"hours":11,"minutes":50,"month":9,"nanos":0,"seconds":0,"time":1381895400000,"timezoneOffset":-480,"year":113},
                     
    JSONArray jsonArray = JSONArray.fromObject(list1); //这是转换
    正常转化的话应该不会多两个0的,所以很想知道你转换的方式我感觉你的问题应该是输入格式不一样,
    比如有的输入2013-10-16 11:50:00
    有的输入
    2013年10月25日22:07:19
    这样吧。导致导出不一样?
    JS中timestamp的转换成data
    http://blog.163.com/lijy_980720@126/blog/static/75574626201261783343834/输入格式没问题 ,我只是一个对象,里面有这个属性的字段,然后是多个此类对象 放在list里,
    直接通过JSONArray jsonArray = JSONArray.fromObject(list);转的,打印出来的就多0
    你把这一段的代码发上来我测试下,我相信json不会犯这么低级的错误,转换时间后竟然多两个0.
    即使多个对象,也会以,来分开的 list1 = tar.queryor(); //这是查询一层,是没问题的

    JSONArray jsonArray = JSONArray.fromObject(list1); //这是转换
    比如CreateTime字段 :
    System.out.println(list1.get(1).getCreateTime());
              打印结果为:2013-10-16 11:50:00.0
                    System.out.println(jsonArray);
    打印结果(CreateTime字段): "createTime":{"date":16,"day":3,"hours":11,"minutes":50,"month":9,"nanos":0,"seconds":0,"time":1381895400000,"timezoneOffset":-480,"year":113},
                     
    JSONArray jsonArray = JSONArray.fromObject(list1); //这是转换
    这里,你把输入的
    list1的值
    和输出的jsonArray的值
    发出来list的值 我就直接在数据库查询了 请注意那个图片 
      

  12.   

    正常转化的话应该不会多两个0的,所以很想知道你转换的方式我感觉你的问题应该是输入格式不一样,
    比如有的输入2013-10-16 11:50:00
    有的输入
    2013年10月25日22:07:19
    这样吧。导致导出不一样?
    JS中timestamp的转换成data
    http://blog.163.com/lijy_980720@126/blog/static/75574626201261783343834/输入格式没问题 ,我只是一个对象,里面有这个属性的字段,然后是多个此类对象 放在list里,
    直接通过JSONArray jsonArray = JSONArray.fromObject(list);转的,打印出来的就多0
    你把这一段的代码发上来我测试下,我相信json不会犯这么低级的错误,转换时间后竟然多两个0.
    即使多个对象,也会以,来分开的 list1 = tar.queryor(); //这是查询一层,是没问题的

    JSONArray jsonArray = JSONArray.fromObject(list1); //这是转换
    比如CreateTime字段 :
    System.out.println(list1.get(1).getCreateTime());
              打印结果为:2013-10-16 11:50:00.0
                    System.out.println(jsonArray);
    打印结果(CreateTime字段): "createTime":{"date":16,"day":3,"hours":11,"minutes":50,"month":9,"nanos":0,"seconds":0,"time":1381895400000,"timezoneOffset":-480,"year":113},
                     
    JSONArray jsonArray = JSONArray.fromObject(list1); //这是转换
    正常转化的话应该不会多两个0的,所以很想知道你转换的方式我感觉你的问题应该是输入格式不一样,
    比如有的输入2013-10-16 11:50:00
    有的输入
    2013年10月25日22:07:19
    这样吧。导致导出不一样?
    JS中timestamp的转换成data
    http://blog.163.com/lijy_980720@126/blog/static/75574626201261783343834/输入格式没问题 ,我只是一个对象,里面有这个属性的字段,然后是多个此类对象 放在list里,
    直接通过JSONArray jsonArray = JSONArray.fromObject(list);转的,打印出来的就多0
    你把这一段的代码发上来我测试下,我相信json不会犯这么低级的错误,转换时间后竟然多两个0.
    即使多个对象,也会以,来分开的 list1 = tar.queryor(); //这是查询一层,是没问题的

    JSONArray jsonArray = JSONArray.fromObject(list1); //这是转换
    比如CreateTime字段 :
    System.out.println(list1.get(1).getCreateTime());
              打印结果为:2013-10-16 11:50:00.0
                    System.out.println(jsonArray);
    打印结果(CreateTime字段): "createTime":{"date":16,"day":3,"hours":11,"minutes":50,"month":9,"nanos":0,"seconds":0,"time":1381895400000,"timezoneOffset":-480,"year":113},
                     
    JSONArray jsonArray = JSONArray.fromObject(list1); //这是转换
    这里,你把输入的
    list1的值
    和输出的jsonArray的值
    发出来list的值 我就直接在数据库查询了 请注意那个图片 
    晕死,让你忽悠了我一下午
    1381895400000
    就是正确的运行
    long time = new Date().getTime();
    System.out.println(time);
    结果:
    1382792101357
    都是十四位的
    我说JS不会转换错嘛。
      

  13.   

    楼主,修改一下json字符串与java util Date的默认转换格式吧,采用默认的转换格式非常不方便。可以将json与java Date互转的格式修改为常用的yyyy-MM-dd ,yyyy-MM-dd HH-mm-ss等。
      

  14.   

    正常转化的话应该不会多两个0的,所以很想知道你转换的方式我感觉你的问题应该是输入格式不一样,
    比如有的输入2013-10-16 11:50:00
    有的输入
    2013年10月25日22:07:19
    这样吧。导致导出不一样?
    JS中timestamp的转换成data
    http://blog.163.com/lijy_980720@126/blog/static/75574626201261783343834/输入格式没问题 ,我只是一个对象,里面有这个属性的字段,然后是多个此类对象 放在list里,
    直接通过JSONArray jsonArray = JSONArray.fromObject(list);转的,打印出来的就多0
    你把这一段的代码发上来我测试下,我相信json不会犯这么低级的错误,转换时间后竟然多两个0.
    即使多个对象,也会以,来分开的 list1 = tar.queryor(); //这是查询一层,是没问题的

    JSONArray jsonArray = JSONArray.fromObject(list1); //这是转换
    比如CreateTime字段 :
    System.out.println(list1.get(1).getCreateTime());
              打印结果为:2013-10-16 11:50:00.0
                    System.out.println(jsonArray);
    打印结果(CreateTime字段): "createTime":{"date":16,"day":3,"hours":11,"minutes":50,"month":9,"nanos":0,"seconds":0,"time":1381895400000,"timezoneOffset":-480,"year":113},
                     
    JSONArray jsonArray = JSONArray.fromObject(list1); //这是转换
    正常转化的话应该不会多两个0的,所以很想知道你转换的方式我感觉你的问题应该是输入格式不一样,
    比如有的输入2013-10-16 11:50:00
    有的输入
    2013年10月25日22:07:19
    这样吧。导致导出不一样?
    JS中timestamp的转换成data
    http://blog.163.com/lijy_980720@126/blog/static/75574626201261783343834/输入格式没问题 ,我只是一个对象,里面有这个属性的字段,然后是多个此类对象 放在list里,
    直接通过JSONArray jsonArray = JSONArray.fromObject(list);转的,打印出来的就多0
    你把这一段的代码发上来我测试下,我相信json不会犯这么低级的错误,转换时间后竟然多两个0.
    即使多个对象,也会以,来分开的 list1 = tar.queryor(); //这是查询一层,是没问题的

    JSONArray jsonArray = JSONArray.fromObject(list1); //这是转换
    比如CreateTime字段 :
    System.out.println(list1.get(1).getCreateTime());
              打印结果为:2013-10-16 11:50:00.0
                    System.out.println(jsonArray);
    打印结果(CreateTime字段): "createTime":{"date":16,"day":3,"hours":11,"minutes":50,"month":9,"nanos":0,"seconds":0,"time":1381895400000,"timezoneOffset":-480,"year":113},
                     
    JSONArray jsonArray = JSONArray.fromObject(list1); //这是转换
    这里,你把输入的
    list1的值
    和输出的jsonArray的值
    发出来list的值 我就直接在数据库查询了 请注意那个图片 
    晕死,让你忽悠了我一下午
    1381895400000
    就是正确的运行
    long time = new Date().getTime();
    System.out.println(time);
    结果:
    1382792101357
    都是十四位的
    我说JS不会转换错嘛。

    好吧  那我在js里 能得到这个1381895400000
      但是怎么转换成20xx-xx-xx xx:xx格式...
      

  15.   


    不是 是把timestamp 转成json...
      

  16.   

    正常转化的话应该不会多两个0的,所以很想知道你转换的方式我感觉你的问题应该是输入格式不一样,
    比如有的输入2013-10-16 11:50:00
    有的输入
    2013年10月25日22:07:19
    这样吧。导致导出不一样?
    JS中timestamp的转换成data
    http://blog.163.com/lijy_980720@126/blog/static/75574626201261783343834/输入格式没问题 ,我只是一个对象,里面有这个属性的字段,然后是多个此类对象 放在list里,
    直接通过JSONArray jsonArray = JSONArray.fromObject(list);转的,打印出来的就多0
    你把这一段的代码发上来我测试下,我相信json不会犯这么低级的错误,转换时间后竟然多两个0.
    即使多个对象,也会以,来分开的 list1 = tar.queryor(); //这是查询一层,是没问题的

    JSONArray jsonArray = JSONArray.fromObject(list1); //这是转换
    比如CreateTime字段 :
    System.out.println(list1.get(1).getCreateTime());
              打印结果为:2013-10-16 11:50:00.0
                    System.out.println(jsonArray);
    打印结果(CreateTime字段): "createTime":{"date":16,"day":3,"hours":11,"minutes":50,"month":9,"nanos":0,"seconds":0,"time":1381895400000,"timezoneOffset":-480,"year":113},
                     
    JSONArray jsonArray = JSONArray.fromObject(list1); //这是转换
    正常转化的话应该不会多两个0的,所以很想知道你转换的方式我感觉你的问题应该是输入格式不一样,
    比如有的输入2013-10-16 11:50:00
    有的输入
    2013年10月25日22:07:19
    这样吧。导致导出不一样?
    JS中timestamp的转换成data
    http://blog.163.com/lijy_980720@126/blog/static/75574626201261783343834/输入格式没问题 ,我只是一个对象,里面有这个属性的字段,然后是多个此类对象 放在list里,
    直接通过JSONArray jsonArray = JSONArray.fromObject(list);转的,打印出来的就多0
    你把这一段的代码发上来我测试下,我相信json不会犯这么低级的错误,转换时间后竟然多两个0.
    即使多个对象,也会以,来分开的 list1 = tar.queryor(); //这是查询一层,是没问题的

    JSONArray jsonArray = JSONArray.fromObject(list1); //这是转换
    比如CreateTime字段 :
    System.out.println(list1.get(1).getCreateTime());
              打印结果为:2013-10-16 11:50:00.0
                    System.out.println(jsonArray);
    打印结果(CreateTime字段): "createTime":{"date":16,"day":3,"hours":11,"minutes":50,"month":9,"nanos":0,"seconds":0,"time":1381895400000,"timezoneOffset":-480,"year":113},
                     
    JSONArray jsonArray = JSONArray.fromObject(list1); //这是转换
    这里,你把输入的
    list1的值
    和输出的jsonArray的值
    发出来list的值 我就直接在数据库查询了 请注意那个图片 
    晕死,让你忽悠了我一下午
    1381895400000
    就是正确的运行
    long time = new Date().getTime();
    System.out.println(time);
    结果:
    1382792101357
    都是十四位的
    我说JS不会转换错嘛。

    好吧  那我在js里 能得到这个1381895400000
      但是怎么转换成20xx-xx-xx xx:xx格式...输入时间,格式,转化为字符串。。<script language="javascript">
    function gettimestr()
    {
    var time=formartDate("yyyy-MM-dd hh:mm:ss",1381895400000);//这里输入格式和时间
    alert(time);
    return false;
    }
    function formartDate(dataFormate, time) {
        var date = new Date();
        date.setTime(time);
        return date.pattern(dataFormate);
    }
    Date.prototype.pattern = function(fmt) {
        var o = {
            "M+" : this.getMonth() + 1, //月份     
            "d+" : this.getDate(), //日     
            "h+" : this.getHours() % 12 == 0 ? 12 : this.getHours() % 12, //小时     
            "H+" : this.getHours(), //小时     
            "m+" : this.getMinutes(), //分     
            "s+" : this.getSeconds(), //秒     
            "q+" : Math.floor((this.getMonth() + 3) / 3), //季度     
            "S" : this.getMilliseconds()
        //毫秒     
        };
        var week = {
            "0" : "日",
            "1" : "一",
            "2" : "二",
            "3" : "三",
            "4" : "四",
            "5" : "五",
            "6" : "六"
        };
        if (/(y+)/.test(fmt)) {
            fmt = fmt.replace(RegExp.$1, (this.getFullYear() + "")
                    .substr(4 - RegExp.$1.length));
        }
        if (/(E+)/.test(fmt)) {
            fmt = fmt.replace(RegExp.$1,
                    ((RegExp.$1.length > 1) ? (RegExp.$1.length > 2 ? "星期" : "周")
                            : "")
                            + week[this.getDay() + ""]);
        }
        if (/(e+)/.test(fmt)) {
            fmt = fmt.replace(RegExp.$1,
                    ((RegExp.$1.length > 1) ? (RegExp.$1.length > 2 ? "星期" : "周")
                            : "")
                            + this.getDay());
        }
        for ( var k in o) {
            if (new RegExp("(" + k + ")").test(fmt)) {
                fmt = fmt.replace(RegExp.$1, (RegExp.$1.length == 1) ? (o[k])
                        : (("00" + o[k]).substr(("" + o[k]).length)));
            }
        }
        return fmt;
    }
    </script><form name="form1" method="post" action="register.action">
             <div class="form-item">
             <div></div>
                        <div>                    
                            <h3><strong>用户注册</strong></h3>
                               <br>
                        <div>
                                <input id="inm2" type="submit" value="注册"  onClick="return gettimestr();"/> 
                                  <span>* 为必填内容</span>                                  
                        </div>
                         
                    </div>
                       <div></div>
                     </div>
                    </form> 
      </html>
      

  17.   

    正常转化的话应该不会多两个0的,所以很想知道你转换的方式我感觉你的问题应该是输入格式不一样,
    比如有的输入2013-10-16 11:50:00
    有的输入
    2013年10月25日22:07:19
    这样吧。导致导出不一样?
    JS中timestamp的转换成data
    http://blog.163.com/lijy_980720@126/blog/static/75574626201261783343834/输入格式没问题 ,我只是一个对象,里面有这个属性的字段,然后是多个此类对象 放在list里,
    直接通过JSONArray jsonArray = JSONArray.fromObject(list);转的,打印出来的就多0
    你把这一段的代码发上来我测试下,我相信json不会犯这么低级的错误,转换时间后竟然多两个0.
    即使多个对象,也会以,来分开的 list1 = tar.queryor(); //这是查询一层,是没问题的

    JSONArray jsonArray = JSONArray.fromObject(list1); //这是转换
    比如CreateTime字段 :
    System.out.println(list1.get(1).getCreateTime());
              打印结果为:2013-10-16 11:50:00.0
                    System.out.println(jsonArray);
    打印结果(CreateTime字段): "createTime":{"date":16,"day":3,"hours":11,"minutes":50,"month":9,"nanos":0,"seconds":0,"time":1381895400000,"timezoneOffset":-480,"year":113},
                     
    JSONArray jsonArray = JSONArray.fromObject(list1); //这是转换
    正常转化的话应该不会多两个0的,所以很想知道你转换的方式我感觉你的问题应该是输入格式不一样,
    比如有的输入2013-10-16 11:50:00
    有的输入
    2013年10月25日22:07:19
    这样吧。导致导出不一样?
    JS中timestamp的转换成data
    http://blog.163.com/lijy_980720@126/blog/static/75574626201261783343834/输入格式没问题 ,我只是一个对象,里面有这个属性的字段,然后是多个此类对象 放在list里,
    直接通过JSONArray jsonArray = JSONArray.fromObject(list);转的,打印出来的就多0
    你把这一段的代码发上来我测试下,我相信json不会犯这么低级的错误,转换时间后竟然多两个0.
    即使多个对象,也会以,来分开的 list1 = tar.queryor(); //这是查询一层,是没问题的

    JSONArray jsonArray = JSONArray.fromObject(list1); //这是转换
    比如CreateTime字段 :
    System.out.println(list1.get(1).getCreateTime());
              打印结果为:2013-10-16 11:50:00.0
                    System.out.println(jsonArray);
    打印结果(CreateTime字段): "createTime":{"date":16,"day":3,"hours":11,"minutes":50,"month":9,"nanos":0,"seconds":0,"time":1381895400000,"timezoneOffset":-480,"year":113},
                     
    JSONArray jsonArray = JSONArray.fromObject(list1); //这是转换
    这里,你把输入的
    list1的值
    和输出的jsonArray的值
    发出来list的值 我就直接在数据库查询了 请注意那个图片 
    晕死,让你忽悠了我一下午
    1381895400000
    就是正确的运行
    long time = new Date().getTime();
    System.out.println(time);
    结果:
    1382792101357
    都是十四位的
    我说JS不会转换错嘛。

    好吧  那我在js里 能得到这个1381895400000
      但是怎么转换成20xx-xx-xx xx:xx格式...输入时间,格式,转化为字符串。。<script language="javascript">
    function gettimestr()
    {
    var time=formartDate("yyyy-MM-dd hh:mm:ss",1381895400000);//这里输入格式和时间
    alert(time);
    return false;
    }
    function formartDate(dataFormate, time) {
        var date = new Date();
        date.setTime(time);
        return date.pattern(dataFormate);
    }
    Date.prototype.pattern = function(fmt) {
        var o = {
            "M+" : this.getMonth() + 1, //月份     
            "d+" : this.getDate(), //日     
            "h+" : this.getHours() % 12 == 0 ? 12 : this.getHours() % 12, //小时     
            "H+" : this.getHours(), //小时     
            "m+" : this.getMinutes(), //分     
            "s+" : this.getSeconds(), //秒     
            "q+" : Math.floor((this.getMonth() + 3) / 3), //季度     
            "S" : this.getMilliseconds()
        //毫秒     
        };
        var week = {
            "0" : "日",
            "1" : "一",
            "2" : "二",
            "3" : "三",
            "4" : "四",
            "5" : "五",
            "6" : "六"
        };
        if (/(y+)/.test(fmt)) {
            fmt = fmt.replace(RegExp.$1, (this.getFullYear() + "")
                    .substr(4 - RegExp.$1.length));
        }
        if (/(E+)/.test(fmt)) {
            fmt = fmt.replace(RegExp.$1,
                    ((RegExp.$1.length > 1) ? (RegExp.$1.length > 2 ? "星期" : "周")
                            : "")
                            + week[this.getDay() + ""]);
        }
        if (/(e+)/.test(fmt)) {
            fmt = fmt.replace(RegExp.$1,
                    ((RegExp.$1.length > 1) ? (RegExp.$1.length > 2 ? "星期" : "周")
                            : "")
                            + this.getDay());
        }
        for ( var k in o) {
            if (new RegExp("(" + k + ")").test(fmt)) {
                fmt = fmt.replace(RegExp.$1, (RegExp.$1.length == 1) ? (o[k])
                        : (("00" + o[k]).substr(("" + o[k]).length)));
            }
        }
        return fmt;
    }
    </script><form name="form1" method="post" action="register.action">
             <div class="form-item">
             <div></div>
                        <div>                    
                            <h3><strong>用户注册</strong></h3>
                               <br>
                        <div>
                                <input id="inm2" type="submit" value="注册"  onClick="return gettimestr();"/> 
                                  <span>* 为必填内容</span>                                  
                        </div>
                         
                    </div>
                       <div></div>
                     </div>
                    </form> 
      </html>
    郁闷,我把这几个方法合在一起 怎么就错的  Date.prototype.pattern = function(fmt) {  这个是什么意思。。
      

  18.   

    正常转化的话应该不会多两个0的,所以很想知道你转换的方式我感觉你的问题应该是输入格式不一样,
    比如有的输入2013-10-16 11:50:00
    有的输入
    2013年10月25日22:07:19
    这样吧。导致导出不一样?
    JS中timestamp的转换成data
    http://blog.163.com/lijy_980720@126/blog/static/75574626201261783343834/输入格式没问题 ,我只是一个对象,里面有这个属性的字段,然后是多个此类对象 放在list里,
    直接通过JSONArray jsonArray = JSONArray.fromObject(list);转的,打印出来的就多0
    你把这一段的代码发上来我测试下,我相信json不会犯这么低级的错误,转换时间后竟然多两个0.
    即使多个对象,也会以,来分开的 list1 = tar.queryor(); //这是查询一层,是没问题的

    JSONArray jsonArray = JSONArray.fromObject(list1); //这是转换
    比如CreateTime字段 :
    System.out.println(list1.get(1).getCreateTime());
              打印结果为:2013-10-16 11:50:00.0
                    System.out.println(jsonArray);
    打印结果(CreateTime字段): "createTime":{"date":16,"day":3,"hours":11,"minutes":50,"month":9,"nanos":0,"seconds":0,"time":1381895400000,"timezoneOffset":-480,"year":113},
                     
    JSONArray jsonArray = JSONArray.fromObject(list1); //这是转换
    正常转化的话应该不会多两个0的,所以很想知道你转换的方式我感觉你的问题应该是输入格式不一样,
    比如有的输入2013-10-16 11:50:00
    有的输入
    2013年10月25日22:07:19
    这样吧。导致导出不一样?
    JS中timestamp的转换成data
    http://blog.163.com/lijy_980720@126/blog/static/75574626201261783343834/输入格式没问题 ,我只是一个对象,里面有这个属性的字段,然后是多个此类对象 放在list里,
    直接通过JSONArray jsonArray = JSONArray.fromObject(list);转的,打印出来的就多0
    你把这一段的代码发上来我测试下,我相信json不会犯这么低级的错误,转换时间后竟然多两个0.
    即使多个对象,也会以,来分开的 list1 = tar.queryor(); //这是查询一层,是没问题的

    JSONArray jsonArray = JSONArray.fromObject(list1); //这是转换
    比如CreateTime字段 :
    System.out.println(list1.get(1).getCreateTime());
              打印结果为:2013-10-16 11:50:00.0
                    System.out.println(jsonArray);
    打印结果(CreateTime字段): "createTime":{"date":16,"day":3,"hours":11,"minutes":50,"month":9,"nanos":0,"seconds":0,"time":1381895400000,"timezoneOffset":-480,"year":113},
                     
    JSONArray jsonArray = JSONArray.fromObject(list1); //这是转换
    这里,你把输入的
    list1的值
    和输出的jsonArray的值
    发出来list的值 我就直接在数据库查询了 请注意那个图片 
    晕死,让你忽悠了我一下午
    1381895400000
    就是正确的运行
    long time = new Date().getTime();
    System.out.println(time);
    结果:
    1382792101357
    都是十四位的
    我说JS不会转换错嘛。

    好吧  那我在js里 能得到这个1381895400000
      但是怎么转换成20xx-xx-xx xx:xx格式...输入时间,格式,转化为字符串。。<script language="javascript">
    function gettimestr()
    {
    var time=formartDate("yyyy-MM-dd hh:mm:ss",1381895400000);//这里输入格式和时间
    alert(time);
    return false;
    }
    function formartDate(dataFormate, time) {
        var date = new Date();
        date.setTime(time);
        return date.pattern(dataFormate);
    }
    Date.prototype.pattern = function(fmt) {
        var o = {
            "M+" : this.getMonth() + 1, //月份     
            "d+" : this.getDate(), //日     
            "h+" : this.getHours() % 12 == 0 ? 12 : this.getHours() % 12, //小时     
            "H+" : this.getHours(), //小时     
            "m+" : this.getMinutes(), //分     
            "s+" : this.getSeconds(), //秒     
            "q+" : Math.floor((this.getMonth() + 3) / 3), //季度     
            "S" : this.getMilliseconds()
        //毫秒     
        };
        var week = {
            "0" : "日",
            "1" : "一",
            "2" : "二",
            "3" : "三",
            "4" : "四",
            "5" : "五",
            "6" : "六"
        };
        if (/(y+)/.test(fmt)) {
            fmt = fmt.replace(RegExp.$1, (this.getFullYear() + "")
                    .substr(4 - RegExp.$1.length));
        }
        if (/(E+)/.test(fmt)) {
            fmt = fmt.replace(RegExp.$1,
                    ((RegExp.$1.length > 1) ? (RegExp.$1.length > 2 ? "星期" : "周")
                            : "")
                            + week[this.getDay() + ""]);
        }
        if (/(e+)/.test(fmt)) {
            fmt = fmt.replace(RegExp.$1,
                    ((RegExp.$1.length > 1) ? (RegExp.$1.length > 2 ? "星期" : "周")
                            : "")
                            + this.getDay());
        }
        for ( var k in o) {
            if (new RegExp("(" + k + ")").test(fmt)) {
                fmt = fmt.replace(RegExp.$1, (RegExp.$1.length == 1) ? (o[k])
                        : (("00" + o[k]).substr(("" + o[k]).length)));
            }
        }
        return fmt;
    }
    </script><form name="form1" method="post" action="register.action">
             <div class="form-item">
             <div></div>
                        <div>                    
                            <h3><strong>用户注册</strong></h3>
                               <br>
                        <div>
                                <input id="inm2" type="submit" value="注册"  onClick="return gettimestr();"/> 
                                  <span>* 为必填内容</span>                                  
                        </div>
                         
                    </div>
                       <div></div>
                     </div>
                    </form> 
      </html>
    郁闷,我把这几个方法合在一起 怎么就错的  Date.prototype.pattern = function(fmt) {  这个是什么意思。。等于自己实现了一个format方法的方法而已。。
    你每个js单独的挨个测测,应该就能找到问题了。。
    有时候,其实就是一个逗号而已。