猿问

Android中的ISO 8601字符串到日期/时间对象

我有一个标准ISO 8601格式的字符串,其中包含从Web服务返回的日期/时间,如下所示:


String dtStart = "2010-10-15T09:27:37Z"

如何将其转换为时间或日期等对象?我最初想要以不同的格式输出它,但是稍后需要用它做其他的东西(也就是说可能以不同的格式使用)。


干杯


三国纷争
浏览 718回答 3
3回答

紫衣仙女

假设您希望计算列分隔值的时间差。完成 - > 15:24:04 开始 - > 09:27:37 不使用Date和SimpleDateFormat,我这样做:String tStart = "09:27:37";String tFinish = "15:24:04";String[] sTimeHourMinSec = tStart.split(":");int sHour = Integer.valueOf(sTimeHourMinSec[0]);int sMin = Integer.valueOf(sTimeHourMinSec[1]);int sSec = Integer.valueOf(sTimeHourMinSec[2]);String[] fTimeHourMinSec = tFinish.split(":");int fHour = Integer.valueOf(fTimeHourMinSec[0]);int fMin = Integer.valueOf(fTimeHourMinSec[1]);int fSec = Integer.valueOf(fTimeHourMinSec[2]);int diffTotSec = (fHour - sHour) * 3600 + (fMin - sMin) * 60 + (fSec - sSec);int diffHours = diffTotSec / 3600;int diffMins = (diffTotSec % 3600) / 60;int diffSecs = (diffTotSec % 3600) % 60;System.out.println("Difference: " + diffHours + " h " + diffMins + " m " + diffSecs + " sec");
随时随地看视频慕课网APP

相关分类

Java
Android
我要回答