导航:首页 > 操作系统 > android日期转换

android日期转换

发布时间:2024-05-31 14:16:25

android中怎么排序日期和时间

时间排序,方法很多,以下提供几种常用的方法。

  1. 转化成long类型进行对比。

  2. 通过Collections.sort()方法进行排序。


【原理】

主要是通过把时间转化成一些可以对比的数据类型进行排序对比。

【详细方式或原理】

  1. 转化成long类型进行对比

    转化代码:

java">StringsDt="08/31/200621:08:00";
SimpleDateFormatsdf=newSimpleDateFormat("MM/dd/yyyyHH:mm:ss");
Datedt2=sdf.parse(sDt);

//继续转换得到秒数的long型

longlTime=dt2.getTime()/1000;

把需要对比的时间转化成long类型进行对比。

2.通过Collections.sort()方法进行排序

Collections.sort()是java提供的官方排序方式。适合多类型排序。

详细的对比代码如下:

一般情况下要重写下Comparator 接口。

importjava.util.Comparator;
{
@Override
publicintcompare(Objectlhs,Objectrhs){
//时间对比
numa=(num)lhs;
numb=(num)rhs;
return(b.getCount()-a.getCount());
}
}

然后在排序的地方进行使用

Comparatorcomp=newSortComparator();
Collections.sort(list,comp);


【最后】

如果数据类型复杂推荐使用方法二,如果类型简单推荐使用方法一。

② android 时间格式化的问题

publicclassDateTest{

publicstaticvoidmain(String[]args){

Stringstr="2015-01-01T00:00:00+08:00";
//截取“T”前面的字符串
StringtestStr=str.split("T")[0];

StringformatStr="yyyyMMdd";
StringdateFromatStr="yyyy-MM-dd";
Stringdate=DateTest.StringToDate(testStr,dateFromatStr,formatStr);
}

/**
*字符串转换到时间格式
*@paramdateStr需要转换的字符串
*@returndateFormatStr需要转换的字符串的时间格式
*@paramformatStr需要格式的目标字符串举例yyyyMMdd
*@returnString返回转换后的时间字符串
*@throwsParseException转换异常
*/
(StringdateStr,StringdateFormatStr,StringformatStr){
DateFormatsdf=newSimpleDateFormat(dateFormatStr);
Datedate=null;
try{
date=sdf.parse(dateStr);
}catch(ParseExceptione){
e.printStackTrace();
}
SimpleDateFormats=newSimpleDateFormat(formatStr);

returns.format(date);
}

}

如果满意的话,采纳我的答案吧,谢谢。

③ 如何在android时区data中新增一个时区

Date date = new Date(1359641834000L);

System.out.println(date);

String dateStr = "2013-1-31 22:17:14";

SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");

dateFormat.setTimeZone(TimeZone.getTimeZone("GMT"));

try

{

// 对于已经设定为GMT时间标准的dateFormat来说,一切需要他转换的字符串日期都是GMT标准时间,转换后返回的Date由于默认遵守系统默认时区,所以转换给Date的日期需要+8(例如北京标准时区),也就是时区与标准不同导致的时差。

Date dateTmp = dateFormat.parse(dateStr);

System.out.println(dateTmp);

}

catch (ParseException e)

{

e.printStackTrace();

}

// Date还是按系统默认时区,而format格式化处来的字符串是GMT,所以要-8。

String dateStrTmp = dateFormat.format(date);

System.out.println(dateStrTmp);

【加粗的代码为设置时区的代码】

备注:我也是遇到该问题,想查询看到了您的问题,通过网络找到了相应的答案,为了尊重原创,我粘贴代码来自:http://www.2cto.com/kf/201312/266908.html

阅读全文

与android日期转换相关的资料

热点内容
ipad如何关闭app中的app 浏览:440
大脑认知pdf 浏览:439
程序员大方 浏览:792
怎样加密微信聊天记录简单点 浏览:385
python数据类型状态判断 浏览:45
java文件打开对话框 浏览:824
pdf怎么打勾 浏览:19
java数据库insert 浏览:665
金山云新用户服务器 浏览:717
量品量体师app下载后如何注册 浏览:909
江湖app房主怎么坐庄 浏览:910
eclipseandroid智能提示 浏览:475
android图书管理源码 浏览:108
脚本语言编译执行 浏览:423
律师讲程序员注意事项 浏览:991
找工地用什么app比较好 浏览:624
为什么应用分身的只有两个app 浏览:950
新宝骏怎么安装app 浏览:536
androidmirrors 浏览:466
光点服务器地址 浏览:267