如何在Java中获取给定的日期字符串格式(模式)?

我想获取给定日期字符串的格式。

示例:我有一个类似的字符串,2011-09-27T07:04:21.97-05:00并且该字符串的日期格式为yyyy-MM-

dd'T'HH:mm:ss.SSS

在这里,当我将string(2011-09-27T07:04:21.97-05:00)传递给将返回format(yyyy-MM-

dd'T'HH:mm:ss.SSS)的方法时,我想找出这种日期格式,然后稍后根据我的require(like yy-mm--dd or

mm/dd/yyyy)格式化给定的日期字符串。

谁能告诉我如何实现?

回答:

import java.text.ParseException;

import java.text.SimpleDateFormat;

import java.util.Date;

import java.util.regex.Matcher;

import java.util.regex.Pattern;

public class NewClass {

private static final String[] formats = {

"yyyy-MM-dd'T'HH:mm:ss'Z'", "yyyy-MM-dd'T'HH:mm:ssZ",

"yyyy-MM-dd'T'HH:mm:ss", "yyyy-MM-dd'T'HH:mm:ss.SSS'Z'",

"yyyy-MM-dd'T'HH:mm:ss.SSSZ", "yyyy-MM-dd HH:mm:ss",

"MM/dd/yyyy HH:mm:ss", "MM/dd/yyyy'T'HH:mm:ss.SSS'Z'",

"MM/dd/yyyy'T'HH:mm:ss.SSSZ", "MM/dd/yyyy'T'HH:mm:ss.SSS",

"MM/dd/yyyy'T'HH:mm:ssZ", "MM/dd/yyyy'T'HH:mm:ss",

"yyyy:MM:dd HH:mm:ss", "yyyyMMdd", };

/*

* @param args

*/

public static void main(String[] args) {

String yyyyMMdd = "20110917";

parse(yyyyMMdd);

}

public static void parse(String d) {

if (d != null) {

for (String parse : formats) {

SimpleDateFormat sdf = new SimpleDateFormat(parse);

try {

sdf.parse(d);

System.out.println("Printing the value of " + parse);

} catch (ParseException e) {

}

}

}

}

}

以上是 如何在Java中获取给定的日期字符串格式(模式)? 的全部内容, 来源链接: utcz.com/qa/422591.html

回到顶部