首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >如何在java中解析字符串“0000:00:00”?

如何在java中解析字符串“0000:00:00”?
EN

Stack Overflow用户
提问于 2018-10-16 01:10:05
回答 2查看 0关注 0票数 0
代码语言:javascript
复制
public static void main(String[] args) {
    String dateReq = " 0000-00-00"; 
    SimpleDateFormat dt = new SimpleDateFormat("yyyy-mm-dd"); 
    try {
        Date date = dt.parse(dateReq);
        String abc=String.valueOf(date);
        System.out.println(abc);
    } catch (ParseException e) {
        // TODO Auto-generated catch block
        e.printStackTrace();
    } 
}

结果: Wed Dec 31 00:00:00 IST 2

预期: 0000:00:00

EN

回答 2

Stack Overflow用户

发布于 2018-10-16 09:30:08

如果你期望0000:00:000000-00-00使用replace()

代码语言:javascript
复制
String dateReq = " 0000-00-00";
String dateReq2 = dateReq.trim().replace("-", ":");
System.out.println(dateReq2);

产量

代码语言:javascript
复制
0000:00:00
票数 0
EN

Stack Overflow用户

发布于 2018-10-16 11:01:18

需要的是一个特殊日期,表示普通日历中不存在的此值。

代码语言:javascript
复制
static final String ZERO_DATE = "0000:00:00";
static final DateTimeFormatter dtf = DateTimeFormatter.ofPattern("yyyy:MM:dd");

public static LocalDate parseDate(String str) {
    if (str.equals(ZERO_DATE))
        return LocalDate.MIN;
    return LocalDate.parse(str, dtf);
}

public static String dateToString(LocalDate date) {
    if (date.equals(LocalDate.MIN))
        return ZERO_DATE;
    return dtf.format(date);
}

public static void main(String[] args) {
    String dateReq = "0000:00:00";
    LocalDate date = parseDate(dateReq);
    System.out.println(dateToString(date));
}

版画

代码语言:javascript
复制
0000:00:00

正如所料。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/-100002906

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档