LocalDateTime的轉換和計算時間的差

2021-10-24 22:54:49 字數 1529 閱讀 2648

localdatetime now = localdatetime.now();

system.out.println("計算兩個時間的差:");

localdatetime end = localdatetime.now();

duration duration = duration.between(now,end);

long days = duration.todays(); //相差的天數

long hours = duration.tohours();//相差的小時數

long minutes = duration.tominutes();//相差的分鐘數

long millis = duration.tomillis();//相差毫秒數

long nanos = duration.tonanos();//相差的納秒數

system.out.println("【 "+days+"天:"+hours+" 小時:"+minutes+" 分鐘:"+millis+" 毫秒:"+nanos+" 納秒】");

string轉localdatetime

string str = "1986-04-08 12:30";

datetimeformatter formatter = datetimeformatter.ofpattern("yyyy-mm-dd hh:mm");

localdatetime datetime = localdatetime.parse(str, formatter);

localdatetime轉string

datetimeformatter formatter = datetimeformatter.ofpattern("yyyy-mm-dd hh:mm");

localdatetime datetime = localdatetime.of(1986, month.april, 8, 12, 30);

string formatteddatetime = datetime.format(formatter); // "1986-04-08 12:30"

將localdatetime轉換為時區iso 8601字串

localdatetime ldt = localdatetime.now(); 

zoneddatetime zdt = ldt.atzone(zoneoffset.utc); //you might use a different zone

string iso8601 = zdt.tostring();

將iso 8601字串轉換回localdatetime

string iso8601 = "2016-02-14t18:32:04.150z";

zoneddatetime zdt = zoneddatetime.parse(iso8601);

localdatetime ldt = zdt.tolocaldatetime();

LocalDateTime多種格式同一轉換處理

場景 在程式中有可能會接收到不同的string型別的時間,需要統一轉換為localdatatime格式 思路 先使用正規表示式,將除數字以外的符號統一替換為相同符號,之後按照符號進行分割,分割之後,按照年 月 日 三個一組劃分為乙個localdatatime時間 private static fin...

LocalDateTime的簡單使用

一開始老是忘記怎麼使用localdatetiem的具體用法,接下來做一下簡單的總結。public static void main string args localdatetime.parse charsequence text 方法中預設datetimeformatter為 yyyy mm dd...

LocalDateTime格式轉換

背景 由於需要擷取小時,前端入參只能傳來年月日格式,於是有以下操作 localdate格式 yyyy mm dd localdatetime 格式 yyyy mm ddthh mm datetimeformatter與string類之間的轉換 datetimeformatter df datetim...