2016-04-01 15 views
0

テキストファイルからデータを抽出して使用する際に問題が発生しました。私はファイルから10倍を取得し、その数の最小値、最大値、平均値を求めなければならない課題を持っています。これは私が今までに得たものです。テキストファイルからのデータの検索に問題があります

import java.util.*; 
 
import java.io.IOException; 
 
import java.util.Scanner; 
 
import java.io.File; 
 

 
public class DataAnalysis 
 
{ 
 

 
    static double i; 
 
    
 
public static void main(String args[]) 
 
{ 
 
     double sum =0; 
 
     
 
     
 
     Scanner inputFile = new Scanner("input.txt"); 
 
     double min = inputFile.nextDouble(); 
 
     double max = inputFile.nextDouble(); 
 
     for(i = inputFile.nextDouble(); i < 10; i++) 
 
     { 
 
     if(i < min) 
 
     { 
 
      min = i; 
 
     } 
 
     else 
 
     { 
 
      if(i > max) 
 
      { 
 
       max = i; 
 
      } 
 
     } 
 
      
 
     } 
 
    double average = sum/ 10; 
 
    System.out.println("Maximum: " + max); 
 
    System.out.println("Minimum: " + min); 
 
    System.out.println("Average: " + average); 
 
} 
 
}

それはうまくコンパイルが、私はこれで任意の助けをいただければ幸いスキャナInputMismatchException

Exception in thread "main" java.util.InputMismatchException 
 
\t at java.util.Scanner.throwFor(Scanner.java:864) 
 
\t at java.util.Scanner.next(Scanner.java:1485) 
 
\t at java.util.Scanner.nextDouble(Scanner.java:2413) 
 
\t at DataAnalysis.main(DataAnalysis.java:20)

を入手!

+1

をごINPUT.TXTファイルがどのようなものが見えますか? – Buddy

+0

私はまた、input.txtの形式が期待どおりではないと思います。だからあなたは私たちと分かち合うのが大好きですかここ – Shenal

+0

は私INPUT.TXTファイル 0.32 150 0.44 0.65 0.23 0.11 0.22 0.12 1.11 0.39であります – Wood

答えて

0

ロケールに依存する可能性があります。 10進数はスウェーデンでは0,5と書かれています。それは例えば言うように

はあなたのコードを変更し

Scanner scan = new Scanner(System.in); 
scan.useLocale(Locale.US);