eclipse/MyEclipse 日期格式、注释日期格式、时区问题

时间:2023-02-23 09:12:26

eclipse/MyEclipse 日期格式、注释日期格式、时区问题

在eclipse/MyEclipse中,如果你的注释或是运行System.out.print(new java.util.Date());的时候,发现时间和系统的时间差8个小时。

那么就可以说明,你的时区和当前时区不对应。我们中国用的时区是Asia/Shanghai,你的差8小时应该是东八区的。关于这一点

你不懂可以看看初中地理:D。

解决办法有2种:

1、在你的eclipse/MyEclipse的JVM的jre运行参数中设置时区。在Default VM Arguments中设置:-Duser.timezone=Asia/Shanghai

步骤:在Window->Preferences->Java->Installed JERs然后看到右边有jre的安装列表,选择一个,点击edit,

然后在Default VM Arguments中设置:-Duser.timezone=Asia/Shanghai

点击完成,重启eclipse、MyEclipse即可;

eclipse/MyEclipse 日期格式、注释日期格式、时区问题

2、出现这种时区差别的原因就是系统的软件注册表的时区设置被损坏,重新注册下即可

Javaeye上也有人提供注册表下载:Time_Zones_XP.rar

解压后运行注册表应该就可以了

在eclipse/MyEclipse中,如果发现你的注释是英文格式的(Mon Mar 21 10:57:13 CST 2011),而不是中文格式的或是你自己想要的格式,可以有如下办法解决。

1、在eclipse.ini、myeclipse.in的配置文件中加入-Duser.language=zh-cn或是将-Duser.language=en 改为-Duser.language=zh-cn即可;

2、修改eclipse、MyEclipse的插件的jar信息。

public static class Date extends SimpleTemplateVariableResolver {
/**
* Creates a new date variable
*/
public Date() {
super("date", TextTemplateMessages.getString("GlobalVariables.variable.description.date")); //$NON-NLS-1$ //$NON-NLS-2$
}
protected String resolve(TemplateContext context) {
return DateFormat.getDateInstance().format(new java.util.Date());
}
}改成
public static class Date extends SimpleTemplateVariableResolver {
/**
* Creates a new date variable
*/
public Date() {
super("date", TextTemplateMessages.getString("GlobalVariables.variable.description.date")); //$NON-NLS-1$ //$NON-NLS-2$
}
protected String resolve(TemplateContext context) {
//return DateFormat.getDateInstance().format(new java.util.Date());
final SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd"); //你的格式
return df.format(new java.util.Date());
}
}

改完后,然后重新打包成jar,覆盖掉原来的那个eclipse/plugins中jar文件即可。关于这个文件,网上也有提供下载的:org.eclipse.text_3.3.0.v20070606-0010.zip (230.1 KB)

来自:http://www.cnblogs.com/hoojo/archive/2011/03/21/1990070.html