java parseexception :Unparseable date: "7-Jun-2013"

首先是appointmentclass,主要就是转换个日期importjava.text.SimpleDateFormat;importjava.util.Date;im... 首先是appointment class,主要就是转换个日期
import java.text.SimpleDateFormat;
import java.util.Date;
import java.text.ParseException;
public class Appointment {
private Date date;
private String description;

private SimpleDateFormat formatter = new SimpleDateFormat("dd-MMM-yyyy");
public Appointment(String aDate, String aDescription) throws ParseException{
date=formatter.parse(aDate);
description=aDescription;
}
//. . .
public String toString() {
String tmp = "Appointment [date="
+ formatter.format(date)
+ ", description=" + description + "] ";
return tmp;
}
}
然后创建了一个testprogram来测试…问题出现了:Unparseable date: "7-Jun-2013"
import java.text.ParseException;
public class AppointmentBook{
public static void main(String args[]){

String dateInString ="7-Jun-2013";
try{
Appointment a=new Appointment(dateInString,"asd");
System.out.println(a.toString());
}
catch(ParseException e){
System.out.println(e.getMessage());
}
}
}
检查不出错误,请大神指点,另外,有个很奇怪的现象就是我用dd/MM/yyyy(当然dateinstring也改成7/3/2013)的话就没报错。是不是语言环境设置问题?我是中文
展开
 我来答
LMLU23
推荐于2016-09-30 · TA获得超过901个赞
知道小有建树答主
回答量:373
采纳率:0%
帮助的人:362万
展开全部
你猜对了,是语言问题。
你使用的构造函数是没有语言参数的,因此使用默认的系统语言,中文的应该是6月。
你要使用指定语言的构造函数
SimpleDateFormat(String pattern, Locale locale)
Locale使用常量Locale.US就可以了或者Locale.ENGLISH就可以了。
zytray
2014-11-10 · 超过12用户采纳过TA的回答
知道答主
回答量:40
采纳率:0%
帮助的人:25.2万
展开全部
SimpleDateFormat类能转换你说的7-jun-2013这种格式么,你看下API中
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式