2011-10-23 57 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

時髦..........! –