注意:我不认为这被标记错误,我看到ICU也适用于来自ICU网站的c,c ++和java:http://userguide.icu-project.org/intro
答案 0 :(得分:1)
昨天 2014-01-04。至少我住的地方。你住在哪里?(修正了问题中的日期)
为什么不使用Calendar或JodaTime?使用日历,就像这样:
Calendar c = new GregorianCalendar();
c.add(Calendar.DATE, -1);
SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd");
String yesterday = format.format(c.getTime());
答案 1 :(得分:0)
ICU4J - 解决方案在结构上非常类似于@MartijnCourteaux发布的JDK内容。只需使用这些类:
结构上等同意味着与标准JDK中的外观相同(只有导入不同):
GregorianCalendar c = new GregorianCalendar();
c.add(Calendar.DATE, -1);
SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd");
String yesterday = format.format(c.getTime());
关于为什么不使用JDK或JodaTime的评论/问题,我仍然看到一些关于ICU4J的论据,即它具有更多的国际化能力,例如比JDK和JodaTime更多的日历实现。无论如何,如果您需要ICU4J的额外功能或者可以满足标准JDK(在您显示的示例标准JDK就足够了),这取决于您。
答案 2 :(得分:0)
将变量前一天设置为:
%ICUDateTimeMinus%1%Days%d%