`
cbfmai
  • 浏览: 40740 次
  • 性别: Icon_minigender_1
  • 来自: 衡阳
社区版块
存档分类
最新评论

数字格式化工具类

阅读更多
/**
 * 数字格式化工具类.<br>
 */
public abstract class NumberUtils {
	/**
	 * 按指定的样式格式化数字.<br>
	 * 例如:
	 * <li><code>format(1,"#0.000")</code>,结果1.000
	 * <li><code>format(1.165686,"#0.000")</code>,结果1.166
	 * <li><code>format(0,"#0.00")</code>,结果0.00
	 * <li><code>format(0.2556,"#0.00%")</code>,结果25.56%
	 * <li><code>format(1,"#0%")</code>,结果100%
	 * @param d double
	 * @param pattern 格式化字符串. 如:#0.000(带三位小数点,四舍五入)
	 * @return
	 */
	public static String format(double d, String pattern) {
		DecimalFormat nf = new DecimalFormat(pattern);
		return nf.format(d);
	}

	/**
	 * {@link #format(double, String)}.
	 * @param doubleStr
	 * @param pattern
	 * @return
	 */
	public static String format(String doubleStr, String pattern) {
		double d = 0;
		try {
			d = Double.parseDouble(doubleStr);
		} catch (NumberFormatException e) {
			System.out.println("字符串转换成数字有异常!  doubleStr=" + doubleStr);
		}
		return format(d, pattern);
	}

	/**
	 * 和 {@link #format(double, String)}相似,区别在于返回值增加了一个html的空格字符(&nbsp;).
	 * @param d
	 * @param pattern
	 * @return 返回值增加了一个html格式的空格符(&nbsp;).
	 */
	public static String formatWithBlank(double d, String pattern) {
		return format(d, pattern) + "&nbsp;";
	}

	/**
	 * {@link #formatWithBlank(double, String)}
	 * @param doubleStr
	 * @param pattern
	 * @return
	 */
	public static String formatWithBlank(String doubleStr, String pattern) {
		double d = 0;
		try {
			d = Double.parseDouble(doubleStr);
		} catch (NumberFormatException e) {
			System.out.println("字符串转换成数字有异常!  doubleStr=" + doubleStr);
		}
		return formatWithBlank(d, pattern);
	}

	/**
	 * 给数字字符后增加一个html格式的空格符(&nbsp;);<br>
	 * 用途:在将html页面导出excel格式时,excel会默认将数字字符串转换成数字,这样会导致字符串前后的00被清掉.
	 * 调用此方法,增加了一个空格字符后,可以避免excel的自动转换. 如:1.200,excel会自动转换成1.2;
	 * 00012,excel会自动转换成12;
	 * @param numStr 数字字符串
	 * @return
	 */
	public static String addBlank(String numStr) {
		return numStr + "&nbsp;";
	}

	/**
	 * @param args
	 */
	public static void main(String[] args) {
		// TODO Auto-generated method stub
		double d = 1.165686;
		String result = NumberUtils.format(d, "#0.000");
		System.out.println("" + result);
		d = 1;
		result = NumberUtils.format(d, "#0.00%");
		System.out.println("" + result);
		d = 0;
		result = NumberUtils.format(d, "#0.0%");
		System.out.println("" + result);
		d = 0.2556;
		result = NumberUtils.format(d, "#0.00%");
		System.out.println("" + result);
		d = 1;
		result = NumberUtils.format(d, "#0%");
		System.out.println("" + result);
		System.out.println("-----------");
		System.out.println(NumberUtils.format("3.1415926", "#0.00%"));
	}

}
分享到:
评论

相关推荐

    Android 一些数字文字相关的格式化工具类

    验证手机,判断身份证,判定输入汉字等

    实现Java的数字格式化工具类

    在Java中使用java.text.DecimalFormat格式化数字为指定形式后输出,以满足实际需要;...使用时在实例化DecimalFormat对象时传递数字格式或通过DecimalFormat类中的applyPattern()方法来实现数字格式化。

    Java工具类

    数字格式化工具类用于将数字转换为特定格式的字符串,例如百分比、货币形式、科学记数法等。它可能使用了`java.text.DecimalFormat`类来实现,这个类允许我们定义数字的格式模式,以满足不同场景下的显示需求。 3....

    28个java常用的工具类源码

    25. **数字格式化工具类**:如NumberFormatUtils,用于数字的格式化输出,如货币、百分比等。 26. **单位转换工具类**:如UnitConversionUtils,可以进行尺寸、重量、速度等物理量的单位转换。 27. **国际化工具类...

    离线json格式化查看工具下载

    1. **格式化**:当JSON数据以紧凑的形式(单行无缩进)存在时,格式化工具可以帮助我们将这些数据转换成清晰易读的多行格式,通过增加缩进来提高可读性。在描述中提到,只需复制粘贴JSON数据到工具中,点击“Format...

    安卓textView相关-Android一些数字文字相关的格式化工具类.rar

    这个压缩包“安卓textView相关-Android一些数字文字相关的格式化工具类.rar”可能包含了一些辅助开发者处理数字和文字格式化的自定义工具类。虽然没有具体的代码示例,但我们可以基于常见的需求来探讨`TextView`中与...

    Mac版json格式化工具

    在处理JSON文件时,有时由于数据过于复杂,原始的文本格式会显得杂乱无章,这时就需要使用JSON格式化工具来美化和整理这些数据。 对于Mac用户来说,"Mac版json格式化工具"是一个必不可少的辅助软件,它可以将混乱的...

    Json格式化工具

    这就是Json格式化工具发挥作用的地方。 Json格式化工具是专门用来解决这个问题的实用工具。它能够将未经格式化的、紧凑的JSON字符串转换成整洁、易读的格式。这种工具通常具备以下功能: 1. **缩进**:通过在键值...

    好用的本地json格式化小工具,无需联网

    3. **高亮显示**:为了增强可读性,格式化工具通常会对关键字(如`true`、`false`、`null`)以及不同的数据类型(如字符串、数字、对象、数组等)进行颜色区分,使用户一眼就能看出数据结构。 4. **错误检查**:...

    json格式化工具

    "json格式化工具"是用来帮助开发者处理和查看JSON数据的软件。这类工具的主要功能包括: 1. **美化输出**:将紧凑的JSON字符串转换成具有缩进和换行的易读格式,便于理解和调试。 2. **验证格式**:检查输入的JSON...

    sql语句格式化工具

    SQL语句格式化工具是一种专为数据库管理员和开发人员设计的实用程序,旨在将混乱、难以阅读的SQL查询转换为整洁、易于理解的格式。在处理复杂查询时,这种工具显得尤为重要,因为它们能帮助我们避免语法错误,提高...

    jquery数字格式化分隔符插件

    总的来说,`jquery-number-divider`是一个实用的工具,它可以极大地简化前端开发中数字格式化的任务,提升网页的用户体验。无论是在大型项目还是小型项目中,它都是一个值得推荐的解决方案。只需简单的配置,就能...

    Android-BankCardUtils自动格式化银行卡号手机号身份证号输入的工具类

    在中国,手机号通常以11位数字表示,工具类可能会在输入过程中实时格式化,如“13800138000”。同时,它也会进行简单的合法性检查,如确保输入的数字长度为11位,以及首位数字符合中国手机号码的规定范围(1-9)。 ...

    UFormatU盘格式化工具

    "UFormatU盘格式化工具"就是专为解决这类问题而设计的一款实用软件,它以其简洁的界面和强大的功能,为用户提供了快速、安全的U盘格式化解决方案。 UFormat是一款小巧但功能齐全的U盘格式化工具,主要特点有以下几...

    格式化JSON的工具

    在处理复杂的JSON数据时,往往会出现格式混乱的情况,这时就需要使用JSON格式化工具来帮助我们整理和查看数据。标题提到的"格式化JSON的工具",很可能是一个专门用于美化和清理JSON字符串的小型应用程序。这类工具...

Global site tag (gtag.js) - Google Analytics