【问题标题】:How to convert TIME to Hours Minute如何将时间转换为小时分钟
【发布时间】:2020-05-12 15:28:16
【问题描述】:

我做了出勤申请。它将根据位置记录用户出勤情况。我在数据库中有名为duration_attendance 的字段,该字段的类型为数据TIME。

此字段将记录用户从开始工作到回家的持续时间(例如:08:00 开始。17:00 结束。它将返回 08:00 持续时间)

在服务器端,我可以通过以下方式实现:

Convert Time To Second : SELECT TIME_TO_SEC('05:15:40');
Convert Second To Hours minute : SELECT TIME_FORMAT(SEC_TO_TIME('48465'),'%Hh %im') // 13h 27m

如何在飞镖端将 TIME 转换为小时和分钟格式?

就我而言,duration_attendance = 08:35 我想将其转换为 8 小时 35 分钟。

响应 API

{
    "status": 1,
    "message": "Data Absensi Bulan 05 Tahun 2020",
    "data": [
        {
            "tanggal_absen": "2020-05-10",
            "jam_absen_masuk": "07:55:00",
            "jam_absen_pulang": "21:22:45",
            "durasi_absen": "13:27:45",
            "status": "o",
            "durasi_lembur": "04:22:45"
        },
        {
            "tanggal_absen": "2020-05-11",
            "jam_absen_masuk": "21:15:10",
            "jam_absen_pulang": "21:15:10",
            "durasi_absen": "00:00:00",
            "status": "a",
            "durasi_lembur": "00:00:00"
        },
        {
            "tanggal_absen": "2020-05-12",
            "jam_absen_masuk": "21:13:01",
            "jam_absen_pulang": "21:13:01",
            "durasi_absen": "00:00:00",
            "status": "a",
            "durasi_lembur": "00:00:00"
        }
    ]
}

【问题讨论】:

  • 您是否只是为了显示目的而隐藏它?查看this。它将帮助您格式化 DateTime 对象。

标签: dart


【解决方案1】:

我的案件的临时解决方案。

使用格式时间 xx:xx:xx

enum TimeFormat { Jam, JamMenit, JamMenitDetik, Menit, MenitDetik, Detik }

String formatTimeTo(
    String time, {
    TimeFormat timeFormat,
  }) {
    String hour = time.replaceAll(":", "").substring(0, 2);
    String minute = time.replaceAll(":", "").substring(2, 4);
    String second = time.replaceAll(":", "").substring(4, 6);
    String resultHour, resultMinute, resultSecond;
    if (hour.startsWith("0")) {
      resultHour = hour.substring(1);
    } else {
      resultHour = hour;
    }
    if (minute.startsWith("0")) {
      resultMinute = minute.substring(1);
    } else {
      resultMinute = minute;
    }
    if (second.startsWith("0")) {
      resultSecond = second.substring(1);
    } else {
      resultSecond = second;
    }

    switch (timeFormat) {
      case TimeFormat.Jam:
        return "$resultHour Jam ";
        break;
      case TimeFormat.JamMenit:
        return "$resultHour Jam $resultMinute Menit";
        break;
      case TimeFormat.JamMenitDetik:
        return "$resultHour Jam $resultMinute Menit $resultSecond Detik";
        break;
      case TimeFormat.Menit:
        return "$resultMinute Menit";
        break;
      case TimeFormat.MenitDetik:
        return "$resultMinute Menit $resultSecond Detik";
        break;
      case TimeFormat.Detik:
        return "$resultSecond Detik";
        break;
      default:
        return "$resultHour Jam $resultMinute Menit $resultSecond Detik";
    }
  }

使用

print(globalF.formatTimeTo("08:05:55", timeFormat: TimeFormat.JamMenitDetik));
//8 Jam 5 Menit 55 Detik

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2011-02-14
    • 1970-01-01
    • 2015-05-18
    • 1970-01-01
    • 2018-12-26
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多