将带有时区的日期字符串转换为仅工作日和日期[复制]

问题描述 投票:0回答:2

我有这样的字符串:Wed Feb 20 02:48:00 GMT+05:30 2019,我需要将其转换为Wed 20

我怎样才能做到这一点?

我试过string.replace(),但这对我帮助新手并没有帮助

java date timestamp date-formatting
2个回答
0
投票

试试这个

class Test
{
        public static void main(String ... args)
        {
                String s="Wed Feb 20 02:48:00 GMT+05:30 2019";
                String arr[]=s.split(" ");
                if (arr.length >=3)
                {
                        String result=arr[0]+" "+arr[2];
                        System.out.println(result);
                }
        }
}
$ java Test
Wed 20

1
投票

如果您将使用始终以此String格式表示的日期, 那么也许你可以使用String split方法,在空间上分开你的约会。

String sourceDate = "Wed Feb 20 02:48:00 GMT+05:30 2019";
String[] dateParts = sourceDate.split(" ");

这将导致包含单独块的Array

dateParts = {'Wed','Feb','20','02:48:00','GMT + 05:30','2019'}

然后你可以拿走你需要的块

String resultDate = dateParts[0] +" "+ dateParts[2];

周三20


如果您打算在该日期进行其他操作,您可能希望使用String将日期Date转换为实际的DateTimeFormatter

这样工作如下:

String string = "January 2, 2010";
DateTimeFormatter formatter = DateTimeFormatter.ofPattern("MMMM d, yyyy", Locale.ENGLISH);
LocalDate date = LocalDate.parse(string, formatter);
System.out.println(date); // 2010-01-02

需要根据您的日期格式更换LocalDate.parse()。 只有日期 - > LocalDate#parse(text, formatter) 日期和时间 - > LocalDateTime#parse(text, formatter) 日期,时间和时区 - > ZonedDateTime#parse(text, formatter)

© www.soinside.com 2019 - 2024. All rights reserved.