Java String Formatter

时间:2012-06-18 13:45:59

标签: java

我想知道java中是否存在类似于Java DecimalFormat的字符串格式化程序(“0。#”)

我有以下一组需要用破折号屏蔽的数字,“00-0000-00”,我希望有一个格式化程序可以让我以类似的方式处理DecimalFormat(“ 00-0000-00" )。如果不存在这样的方法,有人可以提供替代解决方案的示例。

我需要在保存到数据库时删除破折号,并在从数据库中检索它们时重新添加它们。

由于

3 个答案:

答案 0 :(得分:6)

你看过String.format("%2d-%4d-%2d", int1, int2, int3)吗?

示例:

    int n = 12345678;
    String formatted = String.format("%2d-%4d-%2d", n / 1000000, (n / 100) % 10000, n % 100);
    int orig = Integer.valueOf(formatted.replace("-", ""));
    System.out.println(String.format("formatted=%s, orig=%d", formatted, orig));
    // formatted=12-3456-78, orig=12345678

答案 1 :(得分:1)

Java确实有String.format方法。

然后使用replace all进行转换。

答案 2 :(得分:0)

编写自定义方法及其反向。在添加到数据库之前将调用前者,在检索数据库之后调用后者。我相信不应该有太多问题。