一个数字,转换为特定格式
如#,##0.000
¥#0.00
0.#E0
等以及自定义的格式等
之后转换成了String型。java中有没有这样的函数,参数为转换的结果(String),格式(String)
返回之前的数字。
不需要考虑精度问题。
如#,##0.000
¥#0.00
0.#E0
等以及自定义的格式等
之后转换成了String型。java中有没有这样的函数,参数为转换的结果(String),格式(String)
返回之前的数字。
不需要考虑精度问题。
import java.util.regex.*;
public class Test {
public static void main(String[] args) {
//String s = "2,320.000";
String s = "¥30.00";
//String s = "0.3E3";
Pattern p = Pattern.compile("[^0-9.Ee]");
Matcher m = p.matcher(s);
String s1 = m.replaceAll("");
double d = Double.parseDouble(s1);
System.out.println(d);
}
}
String pattern = "¥#0.00"; DecimalFormat format = new DecimalFormat(pattern);
double d = Double.parseDouble(format.parse(result)+"");
System.out.println(d);
觉得应该有这样的方法,没有找到,多谢指点。zephyr_cc() 的方法是正则表达式的,不过提供的表达式貌似不能解析含%的。多谢二位,给分。