2011-10-23 27 views
5

我正在使用逗号分隔数千个文件来解析具有整数值的文件。groovy将字符串“1,503”转换为整数

String s = "1,503" 
Integer i = new Integer(s) 

不起作用,抛出一个解析异常。有没有简单的方法来解析这个?

感谢

回答

6

使用NumberFormat代替。例如,在Java:

import java.util.*; 
import java.text.*; 

public class Test { 
    public static void main(String args[]) throws ParseException { 
     NumberFormat format = NumberFormat.getIntegerInstance(Locale.US); 
     Long parsed = (Long) format.parse("1,234"); 
     System.out.println(parsed); 
    } 
} 

(然后你可以得到从Long整数值,当然。)

我已经明确规定Locale.US保证逗号用作千位分隔符;如果输入可能有所不同,您可能想要使用不同的区域设置。

+0

真棒乔恩,谢谢。 – Ray

7

稍微更常规的方法可能是;

int a = java.text.NumberFormat.instance.parse('1,234') 

但是,这将使用默认的语言环境

+0

这就是Groovy,谢谢Tim – Ray

+0

时髦..........! –