7

これを使用して現在のタイムスタンプを秒単位で取得し、文字列に追加しますDouble.toString((System.currentTimeMillis()/1000)) が、10 進表記の代わりに「1.23213E9」を取得します。10 進数表記に切り替えるにはどうすればよいですか?

4

4 に答える 4

10

これを試して:

TimeUnit.MILLISECONDS.toSeconds(((System.currentTimeMillis());
于 2012-07-18T08:47:14.843 に答える
10

最短は

String secs = "" + System.currentTimeMillis() / 1000;

ミリ秒を保持したい場合は、

String secs = String.format("%.3f",  System.currentTimeMillis() / 1000.0);

次のような文字列を生成します

1342604140.503
于 2012-07-18T08:48:44.217 に答える
7
String.valueOf(System.currentTimeMillis() / 1000)

それはトリックを行う必要がありますか?ダブルに変換する必要はありません

于 2012-07-18T08:46:38.043 に答える
1

Doubleを処理する必要がある場合は、次のようにすることができます。

double myNum = 1.23213E9;
String myString = NumberFormat.getInstance().format(myNum);
System.out.print(myString);
于 2012-07-18T08:52:01.097 に答える