Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/370.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 如何使用StringBuilder并将日期格式化为可读字符串?_Java_Date_Formatting_Apache Commons_Date Formatting - Fatal编程技术网

Java 如何使用StringBuilder并将日期格式化为可读字符串?

Java 如何使用StringBuilder并将日期格式化为可读字符串?,java,date,formatting,apache-commons,date-formatting,Java,Date,Formatting,Apache Commons,Date Formatting,我有一个toString方法,实现如下: public String toString() { return new ReflectionToStringBuilder(this, new MultilineRecursiveToStringStyle()).toString(); } 这很有效,但时间戳(我假设还有日期)显示为对象上的普通toString,它将显示: changeTime=java.sql.Timestamp@32a9d65c[ nanos=0 ], 有没有办法

我有一个
toString
方法,实现如下:

public String toString() {
    return new ReflectionToStringBuilder(this, new MultilineRecursiveToStringStyle()).toString();
}
这很有效,但时间戳(我假设还有日期)显示为对象上的普通toString,它将显示:

changeTime=java.sql.Timestamp@32a9d65c[
  nanos=0
],

有没有办法告诉我希望如何格式化日期对象<代码>StringBuilder允许:

new ReflectionToStringBuilder(this) {
   @Override
   protected Object getValue(Field field) throws IllegalArgumentException, IllegalAccessException {
     if (Timestamp.class.equals(field.getType())) {
       return "convert timestamp to String";
     } else {
       return super.getValue(field);
     }
   }
}

你读过Javadoc吗?您可以使用回调来控制每个可访问字段的格式。