关于java.lang.NumberFormatException异常的一个问题
请问各位java神仙,执行程序时总是提示下面这段代码的红字部分有错误。是类型转换出了问题吗?
错误如下:Exception in thread "main" java.lang.NumberFormatException: For input string: "?IHS"
at sun.misc.FloatingDecimal.readJavaFormatString(Unknown Source)
at sun.misc.FloatingDecimal.parseDouble(Unknown Source)
at java.lang.Double.parseDouble(Unknown Source)
at util.ReadTXT.toDoubleMap(ReadTXT.java:163)
错误部分代码如下:
public static Map<String,Double> toDoubleMap(String filePath){
Map<String,Double> map=new HashMap<String,Double>();
try{
BufferedReader br = new BufferedReader(new InputStreamReader(
new FileInputStream(filePath),"utf-8"));
String str;
while((str=br.readLine())!=null){//特征
String[] s=str.split(",|'| |:");
String key=s[0];//特征
for (int i=0;i<s.length;i++){
double value=Double.parseDouble(s[i]);//特征值
map.put(key, value);
}
}
br.close();
}catch (IOException ex) {
Logger.getLogger(ReadTXT.class.getName()).log(Level.SEVERE, null, ex);
}
return map;