117a118,118 > double value = 0.0; 119a121,137 > // Allow for a bug in StreamTokenizer (JDK-bugs 4079180, 4146533 and 4638205), which > // causes the exponent to be ignored, then read in as a string as the next token. > // This is a nasty kludge and I think it could fail if a number > // without an exponent is followed by a string beginning with "E" or "e" > value = fTokenizer.nval; > int token2 = fTokenizer.nextToken(); > if (token2 == StreamTokenizer.TT_WORD && > (fTokenizer.sval.charAt(0) == 'E' || fTokenizer.sval.charAt(0) == 'e')) { > value = Double.valueOf(value+fTokenizer.sval).doubleValue(); > } > else { > fTokenizer.pushBack(); > } > return value; > } > else { > throw new IOException("Double expected in line: " + fTokenizer.lineno()); 120,120d120 < return fTokenizer.nval; 122,124d138 < < String msg = "Double expected in line: " + fTokenizer.lineno(); < throw new IOException(msg);