将字符串类型日期更改为日期字符串



我正在使用一个API为我的天气应用程序和JSON这个API返回,给我'日期'这样:"date": "2016-08-20"这是字符串类型。但我想把这一天写在屏幕上,比如"星期三"。我在网上寻找转换,但我找不到我的情况的解决方案。有人能解释一下怎么做吗?提前感谢。顺便说一下,这是一个android项目

你只需要2个SimpleDateFormat字符,

  1. 1解析当前日期的String值,得到Date
  2. 和第二个从Date对象获得String值的周。

Saturday

import java.util.*;
import java.text.*;
public class HelloWorld {
    public static void main(String[] args) throws ParseException {
        Date date = new SimpleDateFormat("yyyy-MM-dd").parse("2016-08-20");
        String dayOfWeek = new SimpleDateFormat("EEEEE").format(date);
        System.out.println(dayOfWeek);
    }
}

OR -一行代码 - 如果忽略可读性

import java.util.*;
import java.text.*;
public class HelloWorld {
    public static void main(String[] args) throws ParseException {
        System.out.println(new SimpleDateFormat("EEEEE").format(new SimpleDateFormat("yyyy-MM-dd").parse("2016-08-20")));
    }
}

您可以使用split来对字符串进行标记,但我更喜欢使用DateFormat,因为这是执行此过程的标准方法:

String dateString ="2016-08-20";
SimpleDateFormat formatInput = new SimpleDateFormat("yyyy-MM-dd");
Date date = formatInput.parse(dateString);
SimpleDateFormat formatOutput = new SimpleDateFormat("EEEE");
String  day = formatOutput.format(date);

这个想法是从字符串2016-08-20中的日期创建一个Date实例,然后从Date实例格式化它以呈现一周的日子。

使用SimpleDateFormat class,例如:

try {
            String inputStr = "2016-08-20";
            Date inputDate = new SimpleDateFormat("yyyy-MM-dd").parse(inputStr);
            String dayName = new SimpleDateFormat("EEEE").format(inputDate);
        } catch (ParseException e) {
            e.printStackTrace();
        }

这可能有帮助,

String weekDay = "";
     DateFormat df = new SimpleDateFormat("yyyy-MM-dd");
        Calendar cal  = Calendar.getInstance();
        cal.setTime(df.parse(yourDateAsStringHere));
         int dayOfWeek= cal.get(Calendar.DAY_OF_WEEK);
            if (Calendar.MONDAY == dayOfWeek) {
                weekDay = "monday";
            } else if (Calendar.TUESDAY == dayOfWeek) {
                weekDay = "tuesday";
            } else if (Calendar.WEDNESDAY == dayOfWeek) {
                weekDay = "wednesday";
            } else if (Calendar.THURSDAY == dayOfWeek) {
                weekDay = "thursday";
            } else if (Calendar.FRIDAY == dayOfWeek) {
                weekDay = "friday";
            } else if (Calendar.SATURDAY == dayOfWeek) {
                weekDay = "saturday";
            } else if (Calendar.SUNDAY == dayOfWeek) {
                weekDay = "sunday";
            }

相关内容

  • 没有找到相关文章

最新更新