与日期格式相关的问题

发布于 2024-10-28 13:08:42 字数 814 浏览 5 评论 0原文

你好 我有 2 个不同格式的输入日期,所以请告诉我如何迭代它们 并使用 if-else 将它们转换为新格式。 这是我的输入: 字符串first=“3 月 12 日”; 字符串第二=“2010 年 2 月 23 日”; 我正在尝试将这些不同的格式转换为新的格式。

我使用了以下代码:

Date date=new Date();
//I used this format for Mar 12
DateFormat dateFormat1=new SimpleDateFormat("MMM dd"); 
// Mar 12 gets converted in follwing new format
DateFormat dateFormat2=new SimpleDateFormat("yyyy-MM-dd");  
//I used this format for Feb 23 2010
DateFormat dateFormat3=new SimpleDateFormat("MMM dd yyyy"); 
// Feb 23 2010 gets converted in follwing new format
DateFormat dateFormat4=new SimpleDateFormat("yy-MM-dd");

date=dateFormat1.parse("first");
first=dateFormat2.format(date);
date=dateFormat3.parse("second");
second=dateFormat4.format(date);

现在我面临问题,我不知道如何解析&使用 if-else 块将它们转换为新格式。

hi
I have 2 input dates in different format,so please tell me how to iterate through them
and convert them into new format using if-else.
Here is my input:
String first="Mar 12";
String second="Feb 23 2010";
I am trying to convert these different format into new format.

I have used follwing code:

Date date=new Date();
//I used this format for Mar 12
DateFormat dateFormat1=new SimpleDateFormat("MMM dd"); 
// Mar 12 gets converted in follwing new format
DateFormat dateFormat2=new SimpleDateFormat("yyyy-MM-dd");  
//I used this format for Feb 23 2010
DateFormat dateFormat3=new SimpleDateFormat("MMM dd yyyy"); 
// Feb 23 2010 gets converted in follwing new format
DateFormat dateFormat4=new SimpleDateFormat("yy-MM-dd");

date=dateFormat1.parse("first");
first=dateFormat2.format(date);
date=dateFormat3.parse("second");
second=dateFormat4.format(date);

now I am facing problem,I am not getting how to parse & convert them in new format using if-else block.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

笛声青案梦长安 2024-11-04 13:08:42

如果发生错误,SimpleDateFormat.parse 返回 null。所以,你可以这样做:

date = dateFormat1.parse(first, new ParsePosition(0));
if (date == null) {
  date = dateFormat2.parse(first, new ParsePosition(0));
}

SimpleDateFormat.parse returns null in case of an error. So, you could do something like this:

date = dateFormat1.parse(first, new ParsePosition(0));
if (date == null) {
  date = dateFormat2.parse(first, new ParsePosition(0));
}
围归者 2024-11-04 13:08:42

使用字符串长度 / 字符串中的空格来区分格式。[因为您只有两种格式。]

Use string length / no of space in the string to differentiate the formats.[as you have only two format.]

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文