首页 > 代码库 > eclipse/MyEclipse 日期格式、注释日期格式、时区问题
eclipse/MyEclipse 日期格式、注释日期格式、时区问题
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即可;
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