0

我想知道 java 中是否有类似于 java DecimalFormat("0.#") 的字符串格式化程序

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

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

谢谢

4

3 回答 3

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
于 2012-06-18T13:49:01.500 回答
1

Java 确实有一个String.format方法。

然后使用全部替换来转换回来。

于 2012-06-18T13:50:30.653 回答
0

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

于 2012-06-18T13:52:02.697 回答