我不得不猜测您的真实代码与您显示的内容仅略有关联。由于一些实验和文档。
可能原始解析会引发异常,并且您打印的每个内容都与您的日期操作无关。
为了解决问题
- 打印要转换的字符串
- 打印解析的日期
- 打印转换后的字符串
- 使用带有 Locale 参数的构造函数变体,这样 stackoverflow 上的每个人都可以重现它,并且您的应用程序无论在何处运行都可以正常工作。
所有这些都在一个简单的类中,只包含一个包含代码的 main 方法。
如果问题仍然存在,请返回代码及其输出。
部分应用我的建议后,您可能会以这样的方式结束:
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Locale;
public class Experiment {
public static void main(String args[]) throws ParseException {
SimpleDateFormat fmt = new SimpleDateFormat(
"EEE MMM dd HH:mm:ss zzz yyyy", Locale.US);
SimpleDateFormat fmtddMMyyyy = new SimpleDateFormat("dd/MM/yyyy",
Locale.US);
java.util.Date d = fmt.parse("Mon May 28 00:00:00 IST 2012");
String formattedDate = fmtddMMyyyy.format(d);
System.out.println(formattedDate);
}
}
哪个打印出来
28/05/2012