我正在尝试读取csv文件的行。每行代表一个日志历史记录,时间戳位于第1列。时间戳始终采用YYYYMMDDHHMMSSTTT
(毫秒)的形式。
但是,我不知道如何以YYYYMMDDHHMMSSTTT
的格式解析时间并使其成为我正在创建的类的实例变量。事实上,我不确定在这种情况下它应该是什么类型。
那么,我应该如何以YYYYMMDDHHMMSSTTT
的格式进行解析时间,即。 20180301093559127
?感谢。
答案 0 :(得分:-1)
你可以做一些像这样的解决方法。 虽然不是一个很好的解决方案,但会适合您的情况。
假设您的日期是: 字符串d =" 20180416235441095&#34 ;;
String year=d.substring(0,4);
String mon=d.substring(4,6);
String day=d.substring(6,8);
String hour=d.substring(8,10);
String min=d.substring(10,12);
String sec=d.substring(12,14);
String mill=d.substring(14,17);
String formattedDate=year+"-"+mon+"-"+day+" "+hour+":"+min+":"+sec+"."+mill;
System.out.println("Formatted Date is : "+ formattedDate);
LocalDateTime datetime = LocalDateTime.parse(formattedDate, DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss.SSS"));
System.out.println("Final Date is : "+datetime);
输出如下: 格式化日期为:2018-04-16 23:54:41.095 截止日期为:2018-04-16T23:54:41.095