私が達成する必要があるのは、次のように2列のdoubleを含むテキストファイルからデータをインポートすることです。
201.0176 1.06E+03
201.7557 1.11E+01
202.0201 2.02E+02
202.2064 9.76E+00
202.8342 1.11E+01
203.0161 2.02E+02
203.1638 9.61E+00
203.3843 1.13E+01
これらのデータは最大約50,000行あります。各列を個別の配列にインポートしたいのですが、個別の列を識別する方法がわかりません。私は以下を試しました:
public class CodeTests {
public static ArrayList assignArray(String filePath) throws FileNotFoundException {
Scanner s = new Scanner(new File(filePath));
ArrayList<Double> list = new ArrayList<Double>();
while (s.hasNext()){
list.add(s.nextDouble());
}
s.close();
return list;
}
public static void main(String[] args) throws IOException {
/*
*
*/
ArrayList arrayMZ;
arrayMZ = assignArray("F:/Stuff/Work/Work from GSK/From Leeds/ja_CIDFragmenter/testFile.txt");
for(int i = 0; i < arrayMZ.size(); i++)
System.out.println(arrayMZ.get(i));
System.out.println("End");
}
}
これを実行すると、次の出力が得られます。
run:
201.0176
1060.0
201.7557
11.1
202.0201
202.0
202.2064
9.76
202.8342
11.1
203.0161
202.0
203.1638
9.61
203.3843
11.3
End
BUILD SUCCESSFUL (total time: 1 second)
誰かがこれらの列を2つの配列に分割するか、最初のデータ列を含むarray[0]と2番目のデータ列を含むarray[1]の列の下にある単一の2D配列に分割するのを手伝ってもらえますか。すなわち:
[0] [1]
201.0176 1.06E+03
201.7557 1.11E+01
202.0201 2.02E+02
202.2064 9.76E+00
202.8342 1.11E+01
203.0161 2.02E+02
203.1638 9.61E+00
203.3843 1.13E+01
私はこれをできるだけ明確にしようとしましたが、他に何かあれば教えてください。
ありがとう