仅将android中的时间部分从字符串转换为时间

时间:2018-10-22 12:10:35

标签: java time

我需要将当前处于字符串格式“ 08.00”的时间戳转换为Java中的有效时间,以便以后可以比较时间。如何将该字符串转换为时间?

5 个答案:

答案 0 :(得分:3)

类似这样的东西

        DateFormat sdf = new SimpleDateFormat("hh:mm");
        Date date = sdf.parse(time);            

答案 1 :(得分:2)

与其使用Date和/或SimpleDateFormat类,不如考虑使用LocalTime

String time = "08:00";
LocalTime lt = LocalTime.parse(time);
System.out.println(lt);

输出:

  

08:00

并且可以使用LocalTime::isBefore()LocalTime::isAfter()

与其他时间轻松比较

Example

答案 2 :(得分:1)

尝试以下代码,

String time = "08.00"; 
try {
    DateFormat sdfInput = new SimpleDateFormat("hh.mm");
    Date date = sdfInput.parse(time);

    DateFormat sdfOutput = new SimpleDateFormat("hh:mm");
    Log.e( "Time: ", sdfOutput.format(date));
} catch (Exception e) {
    e.printStackTrace();
}
  

输出->时间:08:00

答案 3 :(得分:0)

最简单的方法是使用SimplDateFormatter:

DateFormat sdf = new SimpleDateFormat("hh:mm")

然后您可以致电Date date = sdf.parse(*your time string*)

现在您有时间作为有效的Date对象。

答案 4 :(得分:0)

我有这样的时间格式hhmmss =“ 151918” 因此您可以根据当前时间格式使用任何格式,而不是hhmmss “ hh.mm”或hh:mm:ss等  您可以在任何需要的地方调用此方法。

 fun convertTimeFormat(time:String):String{
        var formattedTime=""
        try {
            val inputFormat: DateFormat = SimpleDateFormat("hhmmss")
            val timeObj = inputFormat.parse(time)
            Log.d("timeObj",""+timeObj)
            formattedTime=SimpleDateFormat("hh:mm aa").format(timeObj)
        } catch (e: ParseException) {
            e.printStackTrace()
        }
        return formattedTime
    }