如何让 LocalTime 实例变量根据我的特定格式接受 json 数据?
How can i make LocalTime instance variable accept json data based on my specific format?
我有问题,我基本上是从 API 获取数据作为 Json 个对象,
Json 对象中的字段 time
设置为如下格式:HH:mm
我在填写 LocalTime 对象时遇到问题,因为它的默认格式如下所示 23:37:48.120473200
(LocalTime 是我 Message
class 中的一个实例变量)
我该如何解决这个问题?
留言class
public class Message {
private LocalDate date;
private LocalTime time;
private String message;
private String messageId;
public Message(LocalDate date, LocalTime time, String message, String messageId) {
this.date = date;
this.time = time;
this.message = message;
this.messageId = messageId;
}
@Override
public String toString() {
return "Message{" +
"date='" + date + '\'' +
", time='" + time + '\'' +
", message='" + message + '\'' +
", messageId='" + messageId + '\'' +
'}';
}
public String getMessageId() {
return messageId;
}
public void setMessageId(String messageId) {
this.messageId = messageId;
}
public LocalDate getDate() {
return date;
}
public void setDate(LocalDate date) {
this.date = date;
}
public LocalTime getTime() {
return time;
}
public void setTime(LocalTime time) {
this.time = time;
}
public String getMessage() {
return message;
}
public void setMessage(String message) {
this.message = message;
}
}
tl;博士
LocalTime.parse( "03:23" )
详情
文本格式为 24 小时制小时,填充零,后跟冒号和分钟,填充零,符合文本日期时间格式的 ISO 8601 标准。
java.time类在解析此类文本时默认使用 ISO 8601 格式。因此无需指定格式模式。
String input = "03:23" ;
LocalTime lt = LocalTime.parse( input ) ;
如果您使用一个框架来解析您的 JSON,您应该能够要求该框架为您做这个解析。主要 JSON 框架已更新以利用 java.time 类.
我有问题,我基本上是从 API 获取数据作为 Json 个对象,
Json 对象中的字段 time
设置为如下格式:HH:mm
我在填写 LocalTime 对象时遇到问题,因为它的默认格式如下所示 23:37:48.120473200
(LocalTime 是我 Message
class 中的一个实例变量)
我该如何解决这个问题?
留言class
public class Message {
private LocalDate date;
private LocalTime time;
private String message;
private String messageId;
public Message(LocalDate date, LocalTime time, String message, String messageId) {
this.date = date;
this.time = time;
this.message = message;
this.messageId = messageId;
}
@Override
public String toString() {
return "Message{" +
"date='" + date + '\'' +
", time='" + time + '\'' +
", message='" + message + '\'' +
", messageId='" + messageId + '\'' +
'}';
}
public String getMessageId() {
return messageId;
}
public void setMessageId(String messageId) {
this.messageId = messageId;
}
public LocalDate getDate() {
return date;
}
public void setDate(LocalDate date) {
this.date = date;
}
public LocalTime getTime() {
return time;
}
public void setTime(LocalTime time) {
this.time = time;
}
public String getMessage() {
return message;
}
public void setMessage(String message) {
this.message = message;
}
}
tl;博士
LocalTime.parse( "03:23" )
详情
文本格式为 24 小时制小时,填充零,后跟冒号和分钟,填充零,符合文本日期时间格式的 ISO 8601 标准。
java.time类在解析此类文本时默认使用 ISO 8601 格式。因此无需指定格式模式。
String input = "03:23" ;
LocalTime lt = LocalTime.parse( input ) ;
如果您使用一个框架来解析您的 JSON,您应该能够要求该框架为您做这个解析。主要 JSON 框架已更新以利用 java.time 类.