yinyun594230 2010-02-08 23:30
浏览 198
已采纳

将字符串解析成日期时的问题

[code="java"]import java.text.SimpleDateFormat;
import java.util.Date;

public class Test {
public static void main(String[] args){

// String datetime = "Mon Feb 8 22:47:35 CST 2010";
String datetime = "8 22:47:35 CST 2010";
// SimpleDateFormat sdf= new SimpleDateFormat("dow mon dd hh:mm:ss zzz yyyy");
SimpleDateFormat sdf= new SimpleDateFormat("dd hh:mm:ss zzz yyyy");
Date date;
try{
date=sdf.parse(datetime);
System.out.println(sdf.format(date));
}catch(Exception e){
System.out.println(e.getMessage());
}
}
}[/code]
为什么下面这么写就会抛出异常?
[code="java"]import java.text.SimpleDateFormat;
import java.util.Date;

public class Test {
public static void main(String[] args){

     String datetime = "Mon Feb 8 22:47:35 CST 2010";

// String datetime = "8 22:47:35 CST 2010";
SimpleDateFormat sdf= new SimpleDateFormat("dow mon dd hh:mm:ss zzz yyyy");
// SimpleDateFormat sdf= new SimpleDateFormat("dd hh:mm:ss zzz yyyy");
Date date;
try{
date=sdf.parse(datetime);
System.out.println(sdf.format(date));
}catch(Exception e){
System.out.println(e.getMessage());
}
}
}[/code]
[code="java"]Exception in thread "main" java.lang.IllegalArgumentException: Illegal pattern character 'o'
at java.text.SimpleDateFormat.compile(SimpleDateFormat.java:769)
at java.text.SimpleDateFormat.initialize(SimpleDateFormat.java:576)
at java.text.SimpleDateFormat.(SimpleDateFormat.java:501)
at java.text.SimpleDateFormat.(SimpleDateFormat.java:476)
at com.copote.net.test.Test.main(Test.java:11)[/code]

  • 写回答

4条回答 默认 最新

  • kejinlu 2010-02-09 12:14
    关注

    BEIST是北京时间的意思 Locale.CHINA试试

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(3条)

报告相同问题?

悬赏问题

  • ¥20 腾讯企业邮箱邮件可以恢复么
  • ¥15 有人知道怎么将自己的迁移策略布到edgecloudsim上使用吗?
  • ¥15 错误 LNK2001 无法解析的外部符号
  • ¥50 安装pyaudiokits失败
  • ¥15 计组这些题应该咋做呀
  • ¥60 更换迈创SOL6M4AE卡的时候,驱动要重新装才能使用,怎么解决?
  • ¥15 让node服务器有自动加载文件的功能
  • ¥15 jmeter脚本回放有的是对的有的是错的
  • ¥15 r语言蛋白组学相关问题
  • ¥15 Python时间序列如何拟合疏系数模型