jsp如何时间格式化输出呢?

jsp如何时间格式化输出呢?,第1张

SimpleDateFormat,顾名思义,这个类是进行时间格式化的工具类,通过模式字母来进行字符串指定,例如yyyy是指定年份的,MM是指定月份的,这些在jdk api中都可以查询到,

使用时先通过模式字母进行格式化规则的设置。

例如:

SimpleDateFormat sdf = new SimpleDateFormat("日期:yyyy-MM-dd 时间:HH:mm:ss.SSSZ")

System.out.println(sdf.format(new Date()))

控制台输出:

日期:2015-10-13 时间:10:52:22.246+0800

给你个例子

import java.text.DecimalFormat

public class TestNumberFormat {

public static void main(String[] args) {

double pi = 3.1415927 // 圆周率

// 取一位整数

System.out.println(new DecimalFormat("0").format(pi)) // 3

// 取一位整数和两位小数

System.out.println(new DecimalFormat("0.00").format(pi)) // 3.14

// 取两位整数和三位小数,整数不足部分以 0 填补。

System.out.println(new DecimalFormat("00.000").format(pi))// 03.142

// 取所有整数部分

System.out.println(new DecimalFormat("#").format(pi)) // 3

// 以百分比方式计数,并取两位小数

System.out.println(new DecimalFormat("#.##%").format(pi)) // 314.16%

long c = 299792458// 光速

// 显示为科学计数法,并取五位小数

System.out.println(new DecimalFormat("#.#####E0").format(c)) // 2.99792E8

// 显示为两位整数的科学计数法,并取四位小数

System.out.println(new DecimalFormat("00.####E0").format(c)) // 29.9792E7

// 每三位以逗号进行分隔。

System.out.println(new DecimalFormat(",###").format(c)) // 299,792,458

// 将格式嵌入文本

System.out.println(new DecimalFormat("光速大小为每秒 ,### 米。").format(c))

}

}

DecimalFormat 类主要靠 # 和 0 两种占位符号来指定数字长度。0 表示如果位数不足则以 0 填充,# 表示只要有可能就把数字拉上这个位置。上面的例子包含了差不多所有的基本用法,如果你想了解更多,请参考 DecimalFormat 类的文档。

首先如果格式为dd/mm/yyyy的日期为date类型,那么很easy,利用SimpleDateFormat类就可以,具体:

SimpleDateFormat sdt = new SimpleDateFormat()

sdt.setFormat("yyyy-MM-dd")//MM一定是大写,小写代表分钟

sdt.Format(date)//date就是你得到的那个dd/mm/yyyy的日期

想转换回来就按上面说的把格式转换回来就ok了

如果是String 类型的,那么估计要费事了,你需要不停的用subString()方法把字符串截取拼接,这个应该是最简单的方法了。

ps:代码是我手写的,有些可能拼写有误,见谅


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/tougao/7815232.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-10
下一篇 2023-04-10

发表评论

登录后才能评论

评论列表(0条)

保存