Java中String类型与时间戳转换 - 24小时和12小时制

  1. String date1 = "2016-08-03 00:22:43";  
  2. SimpleDateFormat sdf =   new SimpleDateFormat( "yyyy-MM-dd HH:mm:ss" );  
  3. Date dt1;  
  4. try {  
  5.             dt1 = sdf.parse(date1);  
  6.             long ts1 = dt1.getTime();  
  7.             System.out.println(date1 + ": " + ts1);  
  8. catch (ParseException e) {  
  9.             // TODO 自动生成的 catch 块  
  10.             e.printStackTrace();  
  11. }  


需要注意的是:

[java]  view plain  copy
  1. SimpleDateFormat sdf =   new SimpleDateFormat( "yyyy-MM-dd HH:mm:ss" );  
使用的是24小时的时间制。

[java]  view plain  copy
  1. SimpleDateFormat sdf =   new SimpleDateFormat( "yyyy-MM-dd hh:mm:ss" );  
使用的是12小时的时间制。可能会导致时间排序混乱


样例代码1(使用12小时制):

[java]  view plain  copy
  1. String date1 = "2016-08-03 12:18:56";  
  2. String date2 = "2016-08-03 00:22:43";  
  3. SimpleDateFormat sdf =   new SimpleDateFormat( "yyyy-MM-dd hh:mm:ss" );  
  4. Date dt1;  
  5. Date dt2;  
  6.   
  7. //long dura = 0l;  
  8.   
  9. try {  
  10.     dt1 = sdf.parse(date1);  
  11.     dt2 = sdf.parse(date2);  
  12.     long ts1 = dt1.getTime();  
  13.     long ts2 = dt2.getTime();  
  14.       
  15.     System.out.println("date1: " + date1 + " 转换后的时间:" + ts1);  
  16.     System.out.println("date2: " + date2 + " 转换后的时间:" + ts2);  
  17. catch (ParseException e) {   
  18.     // TODO 自动生成的 catch 块  
  19.     e.printStackTrace();  
  20. }  
结果1:

date1: 2016-08-03 12:18:56 转换后的时间:1470154736000
date2: 2016-08-03 00:22:43 转换后的时间:1470154963000


样例代码2(使用24小时制):

[java]  view plain  copy
  1. String date1 = "2016-08-03 12:18:56";  
  2. String date2 = "2016-08-03 00:22:43";  
  3. SimpleDateFormat sdf =   new SimpleDateFormat( "yyyy-MM-dd HH:mm:ss" );  
  4. Date dt1;  
  5. Date dt2;  
  6.   
  7. //long dura = 0l;  
  8.   
  9. try {  
  10.     dt1 = sdf.parse(date1);  
  11.     dt2 = sdf.parse(date2);  
  12.     long ts1 = dt1.getTime();  
  13.     long ts2 = dt2.getTime();  
  14.       
  15.     System.out.println("date1: " + date1 + " 转换后的时间:" + ts1);  
  16.     System.out.println("date2: " + date2 + " 转换后的时间:" + ts2);  
  17. catch (ParseException e) {   
  18.     // TODO 自动生成的 catch 块  
  19.     e.printStackTrace();  
  20. }  
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
要将结构体输出为JSON字符串并保存到文件,你可以使用C语言的JSON-C库。首先,你需要用JSON-C库的函数将结构体转换为JSON对象,然后将JSON对象转换为字符串,并将字符串保存到文件。以下是一个例子: ```c #include <stdio.h> #include <stdlib.h> #include <json-c/json.h> // 定义一个结构体 struct person { char *name; int age; char *email; }; int main() { // 初始化结构体变量 struct person p = {"张三", 25, "[email protected]"}; // 创建JSON对象 json_object *jobj = json_object_new_object(); json_object *jname = json_object_new_string(p.name); json_object *jage = json_object_new_int(p.age); json_object *jemail = json_object_new_string(p.email); // 将结构体成员添加到JSON对象 json_object_object_add(jobj, "name", jname); json_object_object_add(jobj, "age", jage); json_object_object_add(jobj, "email", jemail); // 将JSON对象转换为字符串 const char *json_string = json_object_to_json_string(jobj); // 将字符串保存到文件 FILE *fp = fopen("person.json", "w"); if (fp == NULL) { fprintf(stderr, "无法打开文件\n"); exit(1); } fprintf(fp, "%s", json_string); fclose(fp); // 释放JSON对象 json_object_put(jobj); return 0; } ``` 在上面的例子,我们使用了JSON-C库的json_object_new_object()函数来创建一个JSON对象。然后,我们使用json_object_new_string()和json_object_new_int()函数分别创建字符串类型和整数类型的JSON值,并将它们添加到JSON对象。最后,我们使用json_object_to_json_string()函数将JSON对象转换为字符串,并将其保存到文件。注意,我们还需要使用json_object_put()函数释放JSON对象的内存。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值