我試圖解析的csv文件包含每個樣本有幾行的各種樣本。例如,有10行具有相同樣本名稱「S1」的行,我需要從每行獲取CT值。我試圖結合CT值(通過目標名稱區分)爲每個樣本創建一個Sample類。我能夠解析該文件,但我很難讓它循環並收集正確的數據。需要幫助解析csv文件並將信息收集在一起
我的Sample類的構造函數有11個參數,一個用於樣本名稱,另一個用於CT值。
經過很長一段時間的思考之後,我試着收集了我需要的所有信息在ArrayList的ArrayList中。這並沒有太多幫助,因爲我現在不知道如何將信息收集在一起來創建Sample類的實例。下面是我的嘗試:
public void parseCSV(){
String line = "";
String csvSplitBy = ",";
try
{
Scanner scanner = new Scanner(new FileReader("/Users/Neema/Desktop/testData.csv"));
String[] data;
while (scanner.hasNextLine())
{
line = scanner.nextLine();
data = line.split(csvSplitBy);
if (data.length > 0 && data[0].equals("Well"))
{
while (scanner.hasNextLine())
{
line = scanner.nextLine();
data = line.split(csvSplitBy);
if (data.length > 4)
{
String sampleName = data[3];
String dataType = data[4];
String ctValue = data[11];
String[] gatheredData = {sampleName, dataType, ctValue};
parsedData.add(gatheredData);
}
}
}
}
}
catch (FileNotFoundException e)
{
e.printStackTrace();
}
catch (IOException e)
{
e.printStackTrace();
}
}
下面是CSV文件,testData2
感謝您的幫助!
這是你的Sample類有更多的參數比你從該.csv數據構造的問題? – Prichmp
不一定。每個樣本都有10個數據點,但是每個樣本的每行都有一個數據點。如果所有的數據點都在同一行上,我不會有太大的問題,但是從不同的行中獲取數據並將其與相同的樣本名稱關聯會給我帶來麻煩。 – sparks11