软件国际化之日期,数字,消息格式化

一。日期格式化

DateFormat 类:Date对象转换为字符串以及将一定格式的字符串转换为date对象;

1.两个重要方法:
(1).format(Date date);//将date对象转为字符串;
(2).parse(String src);//将字符串转换为date对象;


2.SimpleDateFormat :可以将date对象转化为自定义格式的字符串;也可以将字符串转换为date对象;

两个方法同上!


示例代码:

package com.oterman.format;

import java.text.DateFormat;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.Locale;

import org.junit.Test;

public class FormatDemo1 {

	//1.将java对象转化成指定字符串形式;
	@Test
	public void Test1(){
		Date date=new Date();
		DateFormat formate=DateFormat.getDateInstance(DateFormat.FULL, Locale.CHINA);
		String dateStr=formate.format(date);
		System.out.println(dateStr);//2014年11月9日 星期日
		
		DateFormat formate2=DateFormat.getDateTimeInstance(DateFormat.FULL, DateFormat.FULL, Locale.CHINA);
		String dateStr2=formate2.format(date);
		System.out.println(dateStr2);//2014年11月9日 星期日 下午05时46分19秒 CST
	}
	//2.将指定字符串形式转换为java对象;//2014年11月9日 星期日
	@Test
	public void test2() throws ParseException{
		String source="2014年11月9日 星期日";
		DateFormat format=DateFormat.getDateInstance(DateFormat.FULL, Locale.CHINA);
		Date date=format.parse(source);
		System.out.println(date.toLocaleString());//2014-11-9 0:00:00
	}
	//SimpleDateFormat,将java对象转换为自定义格式的字符串;
	@Test
	public void test3(){
//		SimpleDateFormat sdf=new SimpleDateFormat("yyyy年MM月dd日");//2014年11月09日
//		SimpleDateFormat sdf=new SimpleDateFormat("yyyy$$MM@dd日");//2014$$11@09日
		SimpleDateFormat sdf=new SimpleDateFormat("yy-MM-dd");//14-11-09
		
		Date date=new Date();
		String dateStr=sdf.format(date);
		System.out.println(dateStr);
	}
	//将自定义格式的字符串转化为java对象;
	@Test
	//2014$$11@09日
	public void test4() throws ParseException{
		SimpleDateFormat sdf=new SimpleDateFormat("yyyy$$MM@dd日");//2014$$11@09日
		Date date=sdf.parse("2014$$11@09日");
		System.out.println(date.toLocaleString());//2014-11-9 0:00:00
		
	}
		
	
}

二。数字格式化器:NumberFormat
作用:可以将数字1000转化为指定样式的字符串,如¥1,000.00
示例代码:

package com.oterman.format;

import java.text.NumberFormat;
import java.text.ParseException;
import java.util.Locale;

import org.junit.Test;

//演示数字格式化器;
public class NumberFormatDemo {
	//将数字转换为自定格式的货币;
	@Test
	public void test1(){
		int num=1000;
		NumberFormat format=NumberFormat.getCurrencyInstance(Locale.CHINA);
		String str=format.format(num);
		System.out.println(str);//¥1,000.00
		
		NumberFormat format2=NumberFormat.getCurrencyInstance(Locale.US);
		System.out.println(format2.format(1000));//$1,000.00
	}
	
	//将货币字符串转化为数字; $1,000.00
	@Test
	public void test2() throws ParseException{
		String source="$1,000.00";
		NumberFormat format=NumberFormat.getCurrencyInstance(Locale.US);
		Number number=format.parse(source);
		System.out.println(number.intValue());//1000
	}

	
}

三。消息格式化器:MessageFormat
将一串包含多种国际化信息的字符串转化为指定格式的字符串


详情参见软件国际化.ppt


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值