import java.text.DateFormat;
import java.text.DecimalFormat;
import java.text.NumberFormat;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Date;
public class XZou {
/**
* DateFormat是一个日期格式化处理器,它是一个抽象类,它常用的子类是SimpleDateFormat
* NumberFormat是一个数字格式化处理器,它是一个抽象类,它的常用的子类是DecimalFormat
* @param args
*/
public static void main(String[] args){
DateFormat df = new SimpleDateFormat("yyyy年MM月dd日 HH时mm分ss秒 E");//构造函数中的参数是指定输出什么样的格式
/**
* 格式列表如下:
y 年 Year 1996; 96
M 年中的月份 Month July; Jul; 07
w 年中的周数 Number 27
W 月份中的周数 Number 2
D 年中的天数 Number 189
d 月份中的天数 Number 10
F 月份中的星期 Number 2
E 星期中的天数 Text Tuesday; Tue
a Am/pm 标记 Text PM
H 一天中的小时数(0-23) Number 0
k 一天中的小时数(1-24) Number 24
K am/pm 中的小时数(0-11) Number 0
h am/pm 中的小时数(1-12) Number 12
m 小时中的分钟数 Number 30
s 分钟中的秒数 Number 55
S 毫秒数 Number 978
*/
String strDate = df.format(new Date());//格式化系统当前时间
System.out.println(strDate);//输出 xxxx年xx月xx日 xx时xx分xx秒 星期x。您也可以根据这个字符串转换成日期对象
try {
Date date = df.parse(strDate);//将串转换成日期对象
//System.out.println(date);
} catch (ParseException e) {
e.printStackTrace();
}
System.out.println("****************数字格式化处理器*******************");
NumberFormat nf = new DecimalFormat("#,##0.00");//构造函数中的参数是指定输出什么样的格式
/**
0 数字 是 阿拉伯数字
# 数字字 是 阿拉伯数字,如果不存在则显示为 0
. 数字 是 小数分隔符或货币小数分隔符
- 数字 是 减号
, 数字 是 分组分隔符
E 数字 是 分隔科学计数法中的尾数和指数。在前缀或后缀中无需加引号。
; 子模式边界 是 分隔正数和负数子模式
% 前缀或后缀 是 乘以 100 并显示为百分数
\u2030 前缀或后缀 是 乘以 1000 并显示为千分数
¤ (\u00A4) 前缀或后缀 否 货币记号,由货币符号替换。如果两个同时出现,则用国际货币符号替换。如果出现在某个模式中,则使用货币小数分隔符,而不使用小数分隔符。
' 前缀或后缀 否 用于在前缀或或后缀中为特殊字符加引号,例如 "'#'#" 将 123 格式化为 "#123"。要创建单引号本身,请连续使用两个单引号:"# o''clock"。
*/
String strValue = nf.format(2222100.12);//
System.out.println(strValue);//"222,210,000.12"
try {
double value = (Double)nf.parse(strValue);//转换成数值对象
//System.out.println(value);
} catch (ParseException e) {
e.printStackTrace();
}
//当然NumberFormat 也提供了确定哪个语言环境具有数值格式以及它们名字的方法
NumberFormat ni = NumberFormat.getNumberInstance();//创建格式化器(默认地区Local格式)数字格式化
NumberFormat ci = NumberFormat.getCurrencyInstance();//创建格式化器(默认地区Local格式)货币格式化
NumberFormat pi = NumberFormat.getPercentInstance();//创建格式化器(默认地区Local格式)百分比格式化
System.out.println(ni.format(24324234.345));//24,324,234.345
//setMaximumFractionDigits(int) 设置数值的小数部分允许的最大位数。
//setMaximumIntegerDigits(int) 设置数值的整数部分允许的最大位数。
//setMinimumFractionDigits(int) 设置数值的小数部分允许的最小位数。
//setMinimumIntegerDigits(int) 设置数值的整数部分允许的最小位数。
ni.setMaximumIntegerDigits(7);//
ni.setMaximumFractionDigits(2);//
System.out.println(ni.format(24324234.345));//4,324,234.34
System.out.println(ci.format(24.3));//¥24.30
System.out.println(pi.format(0.456));//46%
}
}
分享到:
相关推荐
在这个包中,有许多关键的类和接口,例如`Format`、`NumberFormat`、`DateFormat`、`SimpleDateFormat`等,它们在实际开发中有着广泛的应用。 首先,我们来看`Format`接口。它是所有格式化类的基类,定义了通用的...
在`java.text`包中,`NumberFormat`类提供了一种标准的方式来格式化各种类型的数字,包括整数、小数、货币和百分比。你可以通过以下工厂方法获取相应的实例: - `NumberFormat.getNumberInstance()` - 获取通用数字...
8. **国际化**:`java.text`和`java.util`包提供了支持多语言环境的功能,如`DateFormat`、`NumberFormat`和`Locale`。 9. **安全管理**:Java的`java.security`包提供了安全框架,包括权限管理、密钥和证书处理、...
10. **国际化与本地化**:`java.text`和`java.util.locale`包提供了支持不同地区和语言的工具,如NumberFormat、DateFormat和ResourceBundle,帮助开发者创建全球化应用。 尽管这个压缩包可能并不完整,但它提供的...
除了Formatter类,文档还提到了java.text包中的多个类,它们都是用于处理不同类型的数据格式化的工具类,包括DateFormat,DecimalFormat,NumberFormat等。其中,DateFormat和SimpleDateFormat类用于日期和时间的...
8. **国际化与本地化**:`java.text`和`java.util`包中的`DateFormat`、`NumberFormat`和`ResourceBundle`等类支持国际化的日期、数字格式化和本地化的资源配置。 9. **Swing GUI**:虽然Java 1.6的Swing组件库相比...
这个版本还引入了`java.text.NumberFormat`类的改进,以及对`java.util.StringTokenizer`等的增强。 #### 8. 时间转换的时区问题 在处理日期时间时,需要注意时区的概念。Java中的`TimeZone`类提供了对时区的表示...
8. **模板方法模式(Template Method)**:`java.text.Format`类定义了一个算法框架,子类可以实现具体的操作,如`DateFormat`和`NumberFormat`。 9. **建造者模式(Builder)**:`java.text.SimpleDateFormat`类...
`java.text`包是Java国际化和本地化策略的关键部分,它包含了各种格式化类,如`NumberFormat`用于数字格式化,`DateFormat`用于日期和时间格式,以及`MessageFormat`用于创建多语言的消息。`SimpleDateFormat`是`...
8. **国际化和本地化**:`java.text`和`java.util`包提供了处理日期、时间、数字格式化以及国际化和本地化的工具,如`DateFormat`、`NumberFormat`和`ResourceBundle`。 9. **反射和注解**:`java.lang.reflect`...
此时可以考虑使用 `java.text` 包中的类来实现更为灵活的格式化输出功能。 1. **NumberFormat 类**:该类用于对数字进行格式化,如添加千位分隔符、设置小数点等。 - **示例代码**: ```java NumberFormat nf = ...
8. **国际化**:java.text和java.util包提供了日期、时间、数字和消息的本地化处理,如DateFormat、NumberFormat、ResourceBundle等。 9. **安全管理**:Java的安全模型基于SecurityManager,可以限制代码执行的...
10. `java.text`:处理文本格式化和本地化,如`NumberFormat`、`DateFormat`等,方便在不同语言环境中使用。 这些包中的类和接口共同构成了Java开发的基本工具箱,通过阅读API文档,开发者可以了解每个类的功能、...
- `java.text`:包含文本格式化相关的类,如`NumberFormat`和`DateFormat`。 - `java.awt.event`:处理事件监听和事件处理的类。 - 更多其他包,如`javax.swing`(提供Swing GUI组件)等,提供了丰富的库供开发者...
`java.text` 包中的 `NumberFormat` 和 `DateFormat` 用于格式化数字和日期,`ResourceBundle` 用于管理不同语言的文本资源。 10. **安全性** Java 1.6 引入了安全管理器(Security Manager),用于控制程序的访问...
5. **Internationalization API**:Java提供了`java.text`和`java.util`包中的API,用于实现国际化功能,如`ResourceBundle`类用于加载资源包,`Format`类家族用于格式化数据。 6. **国际化设计**:在开发阶段,...
`java.text`和`java.util`包中的类支持国际化和本地化,如`DateFormat`、`NumberFormat`用于日期和数字格式化,`ResourceBundle`用于本地化资源管理。 **六、安全管理** `java.security`包提供了安全管理框架,...
8. **国际化与本地化**:java.text和java.util包提供了对国际化和本地化的支持,如NumberFormat和DateFormat类用于格式化数字和日期,ResourceBundle用于根据地区加载不同的资源。 9. **Java标准库**:包括诸如Math...
9. **国际化**:`java.text`和`java.util`包中的类支持全球化应用,如`DateFormat`、`NumberFormat`用于格式化日期和数字,`ResourceBundle`用于本地化资源。 通过深入学习和理解这些类库,开发者不仅可以编写出...
9. **国际化**:`java.text`和`java.util`包中的类支持国际化的日期、时间、数字和货币格式,如`DateFormat`、`NumberFormat`和`Currency`。 10. **枚举类型**:Java 1.5引入的枚举类型在1.6中得到进一步应用,它...