相关疑难解决方法(0)

更改Java字符串中的日期格式

String代表一个约会.

String date_s = "2011-01-18 00:00:00.0";
Run Code Online (Sandbox Code Playgroud)

我想将它转换为a Date并以YYYY-MM-DD格式输出.

2011-01-18

我怎样才能做到这一点?


好的,根据我在下面找到的答案,这是我尝试过的东西:

String date_s = " 2011-01-18 00:00:00.0"; 
SimpleDateFormat dt = new SimpleDateFormat("yyyyy-mm-dd hh:mm:ss"); 
Date date = dt.parse(date_s); 
SimpleDateFormat dt1 = new SimpleDateFormat("yyyyy-mm-dd");
System.out.println(dt1.format(date));
Run Code Online (Sandbox Code Playgroud)

但它输出02011-00-1而不是所需2011-01-18.我究竟做错了什么?

java string formatting date date-format

453
推荐指数
14
解决办法
128万
查看次数

如何使用LocalDateTime解析/格式化日期?(Java 8)

Java 8添加了一个新的java.time API来处理日期和时间(JSR 310).

我有日期和时间作为字符串(例如"2014-04-08 12:30").如何LocalDateTime从给定的字符串中获取实例?

在我完成LocalDateTime对象的使用之后:如何将LocalDateTime实例转换回具有与上面所示格式相同的字符串?

java datetime timestamp java-8 java-time

313
推荐指数
6
解决办法
47万
查看次数

如何解析日期?

我试图解析这个日期,SimpleDateFormat它不起作用:

import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Date;

public class Formaterclass {
    public static void main(String[] args) throws ParseException{
        String strDate = "Thu Jun 18 20:56:02 EDT 2009";
        SimpleDateFormat formatter = new SimpleDateFormat("yyyy-MM-dd");
        Date dateStr = formatter.parse(strDate);
        String formattedDate = formatter.format(dateStr);
        System.out.println("yyyy-MM-dd date is ==>"+formattedDate);
        Date date1 = formatter.parse(formattedDate);

        formatter = new SimpleDateFormat("dd-MMM-yyyy");
        formattedDate = formatter.format(date1);
        System.out.println("dd-MMM-yyyy date is ==>"+formattedDate);
    }
}
Run Code Online (Sandbox Code Playgroud)

如果我用strDate =尝试这个代码"2008-10-14",我有一个肯定的答案.有什么问题?我该如何解析这种格式?

PS.我从a获得了这个日期,jDatePicker没有关于如何修改用户选择日期时获得的日期格式的说明.

java date simpledateformat

177
推荐指数
4
解决办法
38万
查看次数

如何将java字符串转换为Date对象

我有一个字符串

String startDate = "06/27/2007";
Run Code Online (Sandbox Code Playgroud)

现在我必须得到Date对象.我的DateObject应该与startDate的值相同.

我这样做

DateFormat df = new SimpleDateFormat("mm/dd/yyyy");
Date startDate = df.parse(startDate);
Run Code Online (Sandbox Code Playgroud)

但输出是格式化的

1月27日00:06:00太平洋标准时间2007

java string date

134
推荐指数
4
解决办法
56万
查看次数

如何将日期字符串解析为Date?

如何将下面的日期字符串解析为Date对象?

String target = "Thu Sep 28 20:29:30 JST 2000";
DateFormat df = new SimpleDateFormat("E MM dd kk:mm:ss z yyyy");
Date result =  df.parse(target);  
Run Code Online (Sandbox Code Playgroud)

抛出异常......

java.text.ParseException: Unparseable date: "Thu Sep 28 20:29:30 JST 2000"
        at java.text.DateFormat.parse(DateFormat.java:337)
Run Code Online (Sandbox Code Playgroud)

java format date

114
推荐指数
4
解决办法
33万
查看次数

如何获取Java中当前时刻的年,月,日,小时,分钟,秒和毫秒?

如何获取Java中当前时刻的年,月,日,小时,分钟,秒和毫秒?我想把它们作为Strings.

java date

97
推荐指数
5
解决办法
32万
查看次数

将String转换为java.util.Date

我将日期存储在SQLite数据库中,格式如下:

d-MMM-yyyy,HH:mm:ss aaa
Run Code Online (Sandbox Code Playgroud)

当我用这种格式检索日期时,除了小时之外,我得到的每件事都很好.小时总是00.这是我的输出:

String date--->29-Apr-2010,13:00:14 PM
After convrting Date--->1272479414000--Thu Apr 29 00:00:14 GMT+05:30 2010
Run Code Online (Sandbox Code Playgroud)

这是代码:

    Date lScheduledDate = CalendarObj.getTime();
    DateFormat formatter = new SimpleDateFormat("d-MMM-yyyy,HH:mm:ss aaa");
    SomeClassObj.setTime(formatter.format(lScheduledDate));

    String lNextDate = SomeClassObj.getTime();
    DateFormat lFormatter = new SimpleDateFormat("d-MMM-yyyy,HH:mm:ss aaa");
    Date lNextDate = (Date)lFormatter.parse(lNextDate);
    System.out.println("output here"+lNextDate);
Run Code Online (Sandbox Code Playgroud)

我究竟做错了什么?

java date datetime-format

31
推荐指数
2
解决办法
12万
查看次数

前一段时间用于Android/java

我是java和android的新手.我的一个Android新闻应用程序我将时间显示为"2014年8月7日上午8:20"

但我需要显示它:

5 mins ago    
1 hour ago    
2 days ago
Run Code Online (Sandbox Code Playgroud)

发现很多图书馆,比如我们美好的时光,joda.但我不知道如何将其添加到我的Android应用程序.甚至这个链接/sf/answers/911305321/告诉我.但是如何将我的日期和时间传递给它.

任何简单的代码都可以做到.

谢谢

java android

19
推荐指数
2
解决办法
1万
查看次数

在java.time中正确地将时间转换为毫秒(Java 8)

我一直在尝试使用Java 8中内置的java.time包将"DateTime"转换为毫秒.

但我无法正确地做到这一点.我想将"29/Jan/2015:18:00:00"转换为毫秒.以下是我尝试过的

Instant instant = Instant.parse("2015-01-29T18:00:00.0z");
Long instantMilliSeconds = Long.parseLong(instant.getEpochSecond() + "" + instant.get(ChronoField.MILLI_OF_SECOND));
System.out.println(new Date(instantMilliSeconds)); // prints Sun Jun 14 05:06:00 PDT 1970
Run Code Online (Sandbox Code Playgroud)

我尝试过使用LocalDateTime,但找不到有效转换为毫秒的方法.我并不是说这是最好的方法,如果你知道更好的东西,我会非常感谢一些指示.

java date java-8 java-time

16
推荐指数
1
解决办法
2万
查看次数

如何检查某个日期是否通过

我有一个"mm/yyyy"形式的字符串,我想将它与本地系统的日期进行比较.

我想过要在我的月份和日历中的MONTH字段之间使用转换表,例如:

    Calendar cal = Calendar.getInstance();
    String date = "07/2014";
    String month = date.subString(0, 2);
    int monthToCompare;
    if (month.equals("01"))
      monthToCompare = cal.JANUARY;
    if (month.equals("02"))
      monthToCompare = cal.FEBRUARY;
    ...
Run Code Online (Sandbox Code Playgroud)

然后手动比较if.我不喜欢它,因为我觉得这么简单的操作太长了.

我想到的另一个选择是获取当前Date()和使用该 before()方法.这意味着将我的日期转换为日期格式,但是不推荐使用简单的方法,我必须指定毫秒数,我不知道如何轻松地做到这一点(考虑到闰年,日历更正等等)自1970年以来).

java calendar date

15
推荐指数
2
解决办法
3万
查看次数