java中日期的转化

日期格式化

java中日期的格式

SymbolMeaningComment
y不区分大小写 y yyy yyyy 匹配的都是4位完整的年;如:2020 yy 匹配的是年份的后两位 ;如:19 超过4位,会在年份前面加"0"补位 如 “YYYYY"对应"02017”
MM只能使用大写 若月份为10 M 对应 10 MM 对应 10 MMM 对应 Oct MMMM 对应 Oct 超出3位,任然对应“October”
dd只能使用小写 若日期为10号 d dd 都对应10 超出两位 会在数字面前加0 补位;如 dddd 对应0013
hh区分大小写 大写为24进制时 小写为12进制时 设目前为16时 H HH 都对应16 超出两位,会在数字前补0;例 HHHH 对应0016 h 对应4 hh 对应04 超出两位,会在数字前补0;例 hhhh 对应0004
mm只能使用小写 假设为29分 m mm 都对应29 超出两位,会在数字前补0;例 mmmm 对应0029
ss只能使用小写 假设为15秒 s ss 都对应15 超出两位,会在数字前补0;例 ssss 对应0015
E星期只能使用大写 假设为Sunday E EE EEE 都对应 Sun EEEE仍然对应Sunday 超出4位 仍然对应Sunday
a上午 下午上午对应AM 下午对应PM

其中的分隔符"-"可以替换成其他非字母的任意字符(也可以是汉字)

      Date currentTime=new Date();
      SimpleDateFormat dateFormat=new SimpleDateFormat("y世纪M月d日 晚上h时m分s秒 E a");

输出为:

2020世纪7月24日 晚上7时27分33秒 星期五 下午

字符串转化为日期 String类型----->Date类型

        String dateString="2020年7月24日";
		//1.定义格式化的标准 参数自己指定,参考上面的日期格式
        SimpleDateFormat format = new SimpleDateFormat("yyyy年M月d日");
        //2.调用parse方法 字符串为参数
		Date date = format.parse(dateString1);
        System.out.println(date);

输出:

​ Fri Jul 24 00:00:00 CST 2020

使用SimpleDateFormat类中的parse方法

日期转化为字符串 Date类型---->String类型

        Date currentDate=new Date();
		//定义格式化标准
        SimpleDateFormat format = new SimpleDateFormat("yyy/MM/dd HH:mm:ss");
        //2.调用SimpleDateFormat中的format方法,日期为参数
		String date = format.format(currentDate);
        System.out.println(date);

输出:

​ 2020/07/25 14:35:23

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Java可以使用数字转换为文大写的方法来实现将日期转换为文大写的功能。具体实现方法如下: 1. 首先,引入需要使用的工具类和包。 ```java import java.util.Calendar; import java.util.Date; import java.text.SimpleDateFormat; ``` 2. 然后,获取当前日期并转换成文大写。 ```java // 获取当前日期 Date date = new Date(); // 将日期转换成文大写 String dateStr = DateToCN(date); ``` 3. 编写将日期转换成文大写的方法。 ```java public static String DateToCN(Date date) { // 实例化Calendar对象 Calendar cal = Calendar.getInstance(); // 将日期赋值给Calendar对象 cal.setTime(date); // 获取年份 int year = cal.get(Calendar.YEAR); // 获取月份 int month = cal.get(Calendar.MONTH) + 1; // 获取日 int day = cal.get(Calendar.DAY_OF_MONTH); // 将年份转换成文大写 String yearStr = NumberToCN(year); // 将月份转换成文大写 String monthStr = NumberToCN(month); // 将日转换成文大写 String dayStr = NumberToCN(day); // 拼接日期字符串 String dateStr = yearStr + "年" + monthStr + "月" + dayStr + "日"; return dateStr; } // 将数字转换成文大写 public static String NumberToCN(int number) { // 定义文数字数组 String[] cnNumbers = {"零", "一", "二", "三", "四", "五", "六", "七", "八", "九"}; // 定义文数字单位数组 String[] cnUnits = {"", "十", "百", "千", "万", "十", "百", "千", "亿"}; // 将数字转换成字符串 String numberStr = String.valueOf(number); // 定义结果字符串 String result = ""; // 记录是否需要添加“零” boolean needZero = false; // 循环处理数字每一位 for (int i = 0; i < numberStr.length(); i++) { // 获取当前位的数字 int n = numberStr.charAt(i) - '0'; // 获取当前位的文单位 String unit = cnUnits[(numberStr.length() - 1) - i]; // 判断当前位是否为0 if (n == 0) { // 如果当前位为0,并且前一位不为0,则需要添加“零” if (needZero) { result += cnNumbers[0]; needZero = false; } } else { // 如果当前位不为0,则需要添加当前位的文数字和文单位 result += cnNumbers[n] + unit; needZero = true; } } // 如果结果字符串以“十”结尾,则需要添加一个“零” if (result.endsWith("十")) { result += cnNumbers[0]; } return result; } ``` 这样就可以将日期转换成文大写了。例如,对于当前日期,转换后的字符串为“二零二二年一月二十五日”。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值