У меня есть файлы CSV с заголовками и конкретными номерами. Мне нужно собрать эти номера отдельно для создания XML-файла AIM, но это не важно. Мне тяжело пытаться извлечь номера на основе их заголовков. Я пробовал разные вещи, но не мог заставить его работать. Когда я пытаюсь запустить этот код (ниже всего лишь выборка), он никогда не прекращается. Я не очень разбираюсь в Java или OpenCSV, поэтому, пожалуйста, извините, что вы собираетесь увидеть. (Это также 2 утро, и мой разум неисправно)Использование OpenCSV для извлечения определенных чисел из CSV
import java.io.FileNotFoundException;
import java.io.FileReader;
import java.io.IOException;
import edu.stanford.hakan.aim3api.base.AimException;
import edu.stanford.hakan.aim3api.base.ImageAnnotation;
import edu.stanford.hakan.aim3api.usage.AnnotationBuilder;
import au.com.bytecode.opencsv.CSVReader;
public class CreateAIMFile {
public static void main(String[] args) throws IOException, FileNotFoundException, AimException
{
ImageAnnotation PeserAnnotation1 = new ImageAnnotation();
String csvFilename = "C:/Users/Daniela/Documents/ISPY/205_4493_MR1_ACRIN_6657/E25008/peser_data.csv"; //Insert file name and location
CSVReader csvReader = new CSVReader(new FileReader(csvFilename));
String [] nextLine = csvReader.readNext();
//start
for (int i = 0; i<50; i++){ //i<50 is a random number
while (nextLine[i] != null){
if (nextLine[i] == "CagridId") //customize name
{
CSVReader csvreader = new CSVReader(new FileReader(csvFilename), ';', '\'', 1);
Integer A = Integer.valueOf(nextLine[i]);
PeserAnnotation1.setCagridId(A);
}
else
{
PeserAnnotation1.setCagridId(0);
}
}
}
for (int i = 0; i<50; i++){
while (nextLine[i] != null){
if (nextLine[i] == "PatientComment") //customize name
{
CSVReader csvreader = new CSVReader(new FileReader(csvFilename), ';', '\'', 1);
PeserAnnotation1.setComment(nextLine[i]);
}
else
{
PeserAnnotation1.setComment("");
}
}
}
AnnotationBuilder.saveToFile(PeserAnnotation1, "./AIMFileName.xml", "AIM_v3.xsd"); //customize name of XML file
System.out.println(AnnotationBuilder.getAimXMLsaveResult());
}
}