JavaWeb开发——软件国际化(动态元素国际化)
软件国际化的第二个部分,就是动态元素国际化。
- 数值,货币,时间,日期等数据由于可能在程序运行时动态产生,所以无法像文字一样简单地将它们从应用程序中分离出来,而是需要特殊处理。Java 中提供了解决这些问题的 API 类(位于 java.util 包和 java.text 包中)。
- Locale 类
Locale 实例对象代表一个特定的地理,政治、文化区域。
一个 Locale 对象本身不会验证它代表的语言和国家地区信息是否正确,只是向本地敏感的类提供国家地区信息,与国际化相关的格式化和解析任务由本地敏感的类去完成。(若JDK中的某个类在运行时需要根据 Locale 对象来调整其功能,这个类就称为本地敏感类)。
接下来介绍几个比较常用的API。
DateFormat类(国际化日期)
DateFormat 类可以将一个日期/时间对象格式化为表示某个国家地区的日期/时间字符串。
DateFormat 类除了可按国家地区格式化输出日期外,它还定义了一些用于描述日期/时间的显示模式的 int 型的常量,包括FULL, LONG, MEDIUM, DEFAULT, SHORT,实例化DateFormat对象时,可以使用这些常量,控制日期/时间的显示长度。
实例化DateFormat类有九种方式,以下三种为带参形式,下面列出的三种方式也可以分别不带参,或只带显示样式的参数。
- getDateInstance(int style, Locale aLocale):以指定的日期显示模式和本地信息来获得DateFormat实例对象,该实例对象不处理时间值部分。
- getTimeInstance(int style, Locale aLocale):以指定的时间显示模式和本地信息来获得DateFormat实例对象,该实例对象不处理日期值部分。
- getDateTimeInstance(int dateStyle, int timeStyle, Locale aLocale):以单独指定的日期显示模式、时间显示模式和本地信息来获得DateFormat实例对象。
编写测试代码
@Testpublic void demo1(){// 使用自带的样式格式化日期// 只要日期Date date = new Date();// 有四种显示模式 FULL、LONG、MEDIUM、SHORT// DateFormat df1 = DateFormat.getDateInstance(DateFormat.FULL);// DateFormat df1 = DateFormat.getDateInstance(DateFormat.LONG);// DateFormat df1 = DateFormat.getDateInstance(DateFormat.MEDIUM);DateFormat df1 = DateFormat.getDateInstance(DateFormat.SHORT);System.out.println(df1.format(date));// 只要时间DateFormat df2 = DateFormat.getTimeInstance(DateFormat.FULL);// DateFormat df2 = DateFormat.getTimeInstance(DateFormat.LONG);// DateFormat df2 = DateFormat.getTimeInstance(DateFormat.MEDIUM);// DateFormat df2 = DateFormat.getTimeInstance(DateFormat.SHORT);System.out.println(df2.format(date));//日期和时间都要DateFormat df3 = DateFormat.getDateTimeInstance();System.out.println(df3.format(date));}
运行结果我就不贴图了,大家自己运行感受。
都是一些对API的应用,没什么好说的,直接贴一些测试代码了解API的使用即可。
@Testpublic void demo2(){//设置LocaleDate date = new Date();DateFormat dateFormat = DateFormat.getDateTimeInstance(DateFormat.FULL,DateFormat.FULL,Locale.CANADA);System.out.println(dateFormat.format(date));}
NumberFormat类(国际化数据)
- 实例化NumberFormat类时,可以使用locale对象作为参数,也可以不使用,下面列出的是使用参数的。
- getNumberInstance(Locale locale):以参数locale对象所标识的本地信息来获得具有多种用途的NumberFormat实例对象。
- getIntegerInstance(Locale locale):以参数locale对象所标识的本地信息来获得处理整数的NumberFormat实例对象。
- getCurrencyInstance(Locale locale):以参数locale对象所标识的本地信息来获得处理货币的NumberFormat实例对象。
- getPercentInstance(Locale locale):以参数locale对象所标识的本地信息来获得处理百分比数值的NumberFormat实例对象。
编写测试代码
@Testpublic void demo3() {// 保留小数有效位数double d = 1.23456789456789;// 保留两位小数NumberFormat format = NumberFormat.getNumberInstance();// 最大两位小数format.setMaximumFractionDigits(2);// 最小两位小数format.setMinimumFractionDigits(2);System.out.println(format.format(d));// 货币格式化int i = 100;// 显示美元NumberFormat format2 = NumberFormat.getCurrencyInstance(Locale.US);System.out.println(format2.format(i));// 百分比格式化double d2 = 0.78123;NumberFormat format3 = NumberFormat.getPercentInstance();System.out.println(format3.format(d2));// 想显示两位小数format3.setMaximumFractionDigits(2);format3.setMinimumFractionDigits(2);System.out.println(format3.format(d2));}
到这里,动态元素的国际化就介绍完了,都是一些需要记忆的知识点呐,其实没什么好说的,接下来就是软件国际化的最后一部分,动态文本国际化。
JavaWeb开发——软件国际化(动态元素国际化)相关推荐
- java国际化软件_JavaWeb开发——软件国际化(动态元素国际化)
软件国际化的第二个部分,就是动态元素国际化. 数值,货币,时间,日期等数据由于可能在程序运行时动态产生,所以无法像文字一样简单地将它们从应用程序中分离出来,而是需要特殊处理.Java 中提供了解决这些 ...
- javaweb开发软件下载
由于官网下载开发软件太慢,为了让更多刚接触javaweb快速搭建开发环境,我将常用的软件已经部署在网盘,大家根据需求下载即可. 关注下方公众号,点击其它找到开发软件,根据需求下载即可.
- JavaWeb开发实现一个动态页面
接着上篇文章建完一个web项目后我们再来建一个servlet:File->New->Servlet 出现如下界面,并给package命名"servlet" 然后java ...
- JavaWEB开发的国际化
JavaWEB开发的国际化 软件的国际化:软件开发时,要使它能同时应对世界不同地区和国家的访问,并针对不同地区和国家的访问,提供相应的.符合来访者阅读习惯的页面或数据. 固定文本元素的国际化 软件实现 ...
- 2011级-csdn-java-张侃— JavaWEB开发-国际化(二)
编程实现固定文本的国际化 l ResourceBundle类提供了一个静态方法getBundle,该方法用于装载资源文件,并创建ResourceBundle实例: Locale curre ...
- 软件的国际化、Jstl国际化标签
软件的国际化: 软件开发时,要使它能同时应对世界不同地区和国家的访问,并针对不同地区和国家的访问,提供相应的.符合来访者阅读习惯的页面或数据. 一.国际化 软件实现国际化,需具备哪些特征: 1.对于程 ...
- JavaWeb开发---B/S和C/S模式 tomcat服务器 Tomcat项目部署和发布 静态网页和动态网页 tomcat对web项目的目录要求 使用idea开发工具创建web项目 设置默认首页
目录 1. B/S和C/S模式 1.1 C/S模式 1.2 B/S模式 1.3 B/S和C/S区别 2.服务器 3.web 服务器 3.1.IIS 3.2.Tomcat 3.3.Zeus 3.4.Ng ...
- JavaWeb开发 前端语言:jQuery(一) jQuery核心函数、jQuery对象、jQuery选择器、以及jQuery元素筛选
JavaWeb开发 前端语言:jQuery 1.jQuery介绍 1.1 jQuery的初使用 1.2 使用jQuery的常用问题解析 2. jQuery核心函数介绍 3.区分jQuery对象与dom ...
- javaweb开发要学习的所有技术和框架总结
javaweb开发要学习的所有技术和框架总结: 前端技术: HTML, CSS, JAVASCRIPT, JQUERY, AJAX HTML "超文本"就是指页面内可以包含图片.链 ...
- JavaWeb开发网上商城
JavaWeb开发知识总结(网上商城项目小结) 1. 数据库设计 表的关系的设计如下: 2. 使用技术总结 2.1 BaseServlet的设计 实现处理请求的方式1: * 针对每一个请求均创建一个S ...
最新文章
- C++leetcode找出两个有序数组的中位数(2)
- innerText,outerText,innerHTML,outerHTML区别
- 讲师征集| .NET Conf China 2021正式启动!
- php Trait 基础应用讲解
- freemarker java类_在freemarker使用java类方法
- python做视频抽帧图_python-opencv-视频截取帧图片
- python_入门初级
- 初中数学最全几何模型_初中数学几何模型秘籍.pdf
- Spark Sql编程
- Java培训机构可靠吗?
- Qt实现图片的简单压缩
- 最新elasticsearch版本与jdk版本对应图
- 用max的角度来解析blender建模!
- 一阶线性偏微分方程通解法和特征线法(一)| 两个自变量情况 | 偏微分方程(七)
- 学习笔记:Github(1)站在巨人的肩膀上
- DJ8-2 主存储器的组织
- 2023秋招--游卡--游戏客户端--一面面经
- matlab 相位滞后,相位滞后.PPT
- JavaScript之赛车游戏
- 电子技术基础(三)__电路分析基础__电容元件