导航:首页 > 操作系统 > 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日期转换相关的资料

热点内容
cs管理员命令是什么 浏览:122
华为v10模拟加密门禁卡 浏览:723
android修改app名称 浏览:640
辐射3伙伴命令 浏览:247
苹果电脑pdf转换成word 浏览:921
纯小数运算法则 浏览:385
php什么是事务 浏览:859
怎么添加网名文件夹 浏览:769
啊哈算法语言 浏览:677
马来西亚加密货币政策 浏览:233
交通银行app锁定怎么解锁 浏览:54
php登录验证session 浏览:730
粤政易文件放在手机哪个文件夹 浏览:107
打印机和传真命令 浏览:550
php添加购物车 浏览:5
安卓怎么下载植物大战僵尸1无尽版 浏览:267
程序员上班下班难吗 浏览:299
梦的pdf微盘 浏览:186
材料结构分析pdf 浏览:795
程序员预研的项目 浏览:346