パッケージ、リポジトリ、アプリカテゴリを検索

パッケージ詳細v4.0.3

duration

'Duration' を扱いやすくするためのユーティリティ。人間が読みやすい形式で期間をフォーマットし、また人間が読みやすい形式の期間を Dart の Duration にパースします。

AndroidiOSWebmacOSWindowsLinux
30日間ダウンロード
10.3万
いいね数
172
Pub ポイント
150

パッケージをインストール

flutter pub add duration

パッケージ概要

公開情報に基づく選定ガイドです。参考としてご利用ください。

duration パッケージは、Dart の Duration クラスと作業するのを簡単にするユーティリティを提供します。これにより、人間が読みやすい文字列(例:'2h 30m')に期間をフォーマットしたり、その文字列を Duration オブジェクトにパースできるようになります。これは、ユーザーインターフェースで時間間隔を表示する、または自然な形式でユーザーからの時間入力を受ける場合に特に役立ちます。このパッケージは、モバイル、Web、デスクトップを含むすべての主要プラットフォームをサポートしており、時間関連データを扱うクロスプラットフォームアプリケーションに最適です。

用途

  • 読み取り可能な形式で経過時間を表示する
  • ユーザー入力の時刻表現の解析
  • 期間表現形式の間での変換
  • アプリでの時間追跡
  • スケジューリングまたはカウントダウン機能

主な機能

  • 人間が読みやすい期間のフォーマット
  • 文字列から期間へのパース
  • クロスプラットフォーム互換性
  • 最小限のセットアップで簡単なAPI
  • 時、分、秒、ミリ秒をサポートしています

適している対象

  • 時刻表示形式のフォーマットが必要なアプリ
  • ユーザー向けの時間入力フィールド
  • タスクまたはタイマー アプリケーション
  • クロスプラットフォーム時刻ユーティリティ
  • 軽量な期間ヘルパーを探している開発者

注意事項

  • 複雑なタイムゾーンやカレンダー計算をサポートしていません
  • 基本的な期間単位に限定される
  • エッジケースに対して手動での検証が必要です
  • 日付演算には適していない
  • 組み込みのローカライゼーションサポートなし

元の README

関連するソースリポジトリの README 原文のスナップショットです。最新の内容はリポジトリをご覧ください。

duration pub package

Utilities to make working with 'Duration's easier.

Format duration

Use Duration.pretty() method or prettyDuration function to format a duration.

main() {
  final dur = Duration(
    days: 5,
    hours: 23,
    minutes: 59,
    seconds: 59,
    milliseconds: 999,
    microseconds: 999,
  );

  // => 5d, 23h, 59m, 59s
  print(dur.pretty());

  // => 3 seconds
  print((aMillisecond * 3000).pretty());

  // => 2 seconds 250 milliseconds
  print((aMillisecond * 2250).pretty);

  // => 1 day 3 hours 2 minutes
  print((aMillisecond * 97320000).pretty());
}

With desired locale

Use locale parameter to format with desired locale.

main() {
  // => 5 días 9 horas
  final dur = aDay * 5 + anHour * 9;
  print(
      dur.pretty(
        abbreviated: false,
        locale: DurationLocale.fromLanguageCode('ru'),
      ));
}

Abbreviate units

Use abbreviated parameter to use abbreviated units.

main() {
  final dur = Duration(
    days: 5,
    hours: 23,
    minutes: 59,
    seconds: 59,
    milliseconds: 999,
    microseconds: 999,
  );

  // => 5d, 23h, 59m, 59s, 999ms, 999us
  print(dur.pretty(abbreviated: true, tersity: DurationTersity.all));
}

Spacer

Use spacer to add a string between amount and unit.

main() {
  // => 5 whole days 9 whole hours
  print((aDay * 5 + anHour * 9).pretty(spacer: ' whole '));
}

Delimiter

Use delimiter to separate each individual part with a string.

main() {
  // => 5 days, 9 hours and 10 minute
  print((aDay * 5 + anHour * 9 + aMinute * 10).pretty(delimiter: ', '));
}

Conjugation

Use conjugation to add a string before the final unit. Use it in conjunction with delimiter to add ',' and 'and' to separate individual parts.

main() {
  // => 5 days, 9 hours and 10 minutes
  print(
      (aDay * 5 + anHour * 9 + aMinute * 10).pretty(
        delimiter: ', ',
        conjugation: ' and ',
      ));
}

Parse duration

Parse duration

main() {
  final Duration dur = parseDuration('245:09:08.007006');
  print(dur);
}

Parse time

main() {
  final Duration dur = parseTime('245:09:08.007006');
  print(dur);
}

カテゴリー

ソースリポジトリ

このパッケージを使用しているプロジェクト