9

人間が読める形式でいくつかの時間間隔を表現したいと思います。ユニットの正しいサイズを自動的に選択できるライブラリを探していました。間隔はミリ秒から週の範囲になります。何かのようなもの

  • 0.2秒
  • 2:00
  • 4日
  • ..。

引数のサイズを手動でチェックして変換できることはわかっていますが、車輪の再発明を行う前に、それを実現するための(標準)ライブラリがあるかどうかを確認したいと思いました。

  • TimeUnitは変換を行いますが、引数のサイズに関する知識はありません
  • Joda-Time durationは、私が必要としているものを正確に表していますが、表現についてはあまりわかりませんでした(ただし、ReadableDurationのISO8601形式の場合)

編集

私の入力はナノ秒単位で、上記のように出力されます。

4

1 に答える 1

28

PrettyTimeをチェック

PrettyTimeは、オープンソースの時間フォーマットライブラリです。完全にカスタマイズ可能なPrettyTimeは、Digg、Twitter、Facebookで見られるような人間が読める相対的なタイムスタンプを作成します。簡単です。「今すぐ」始めましょう。そして18以上の言語で!

例えば

    PrettyTime p = new PrettyTime();
    System.out.println(p.format(new Date()));
    //prints: “right now”

    PrettyTime t = new PrettyTime(new Date(3155692597470L * 3L));
    t.format(new Date(0));
    //3 centuries ago 
于 2012-07-17T11:58:35.100 に答える