是否有人知道如何正確地從文件中讀取,看起來像這樣輸入:從文件中讀取Java中
0.12,4.56 2,5 0,0.234
我想OT讀入2個陣列像這樣:
a[0]=0.12
a[1]=2
a[2]=0;
b[0]=4.56
b[1]=5
b[2]=0.234
在java中 我嘗試使用掃描儀和它的作品來回iput像0 4 5 3.45 6.7898等,但我想它在用逗號 頂部的輸入謝謝
這是我試過的代碼:
import java.io.File;
進口java.io.FileNotFoundException; import java.util.Scanner;
public class IFFTI {
public static int size=0;
public static double[] IFFTInputREAL= new double[100];
public static double[] IFFTInputIMAG= new double[100];
static int real=0;
static int k=0;
public static void printarrays(){
for(int k=0;k<size;k++){
System.out.print(IFFTInputREAL[k]);
System.out.print(",");
System.out.print(IFFTInputIMAG[k]);
System.out.print("\n");
}
}
public static void readIFFT(String fileName){
try {
Scanner IFFTI = new Scanner(new File(fileName));
while (IFFTI.hasNextDouble()) {
if(real%2==0){
IFFTInputREAL[k] = IFFTI.nextDouble();
real++;
}
else{
IFFTInputIMAG[k] = IFFTI.nextDouble();
real++;
k++;}
}
try{
size=k;
}catch(NegativeArraySizeException e){}
} catch (FileNotFoundException e) {
System.out.println("Unable to read file");
}
}
}
您能否包含您嘗試過的代碼? – 2012-01-08 15:31:14
看看這裏http://docs.oracle.com/javase/tutorial/essential/io/file.html – RanRag 2012-01-08 15:32:33
我想你只需要添加**。useDelimiter(Pattern.compile(「[,]」)) **在您構建之後**到您的**掃描儀**。請參閱下面的更詳細的答案。 – 2012-01-08 15:44:00