2016-04-13 19 views
1

Bir sayı dizesiyle birbirine bağlanmış üç adet CSV dosyası var, tüm verileri birlikte saklamak ve csv dosyalarından birine sahip olmak için 2d dizisi oluşturdum. Diğer dosyalardaki veriler aynı sırada değildir, bu yüzden dosyanın 1. satırını dizinin ilk satırına okuyamıyorum.Sıralanmamış öğeleri bir dosyadan bir diziye koyma

İşte bundan çok çok düzenli veya verimli olmadığını biliyoruz kodum

public class grades { 
public static void main(String[] args) throws FileNotFoundException 
{ 
    int rowc = 0; 
    String inputLine = ""; 

    String[][] students = new String[10][6]; 
    //Get scanner instance 
    Scanner scanner = new Scanner(new File("/IRStudents.csv")); 

    //Set the delimiter used in file 
    scanner.useDelimiter(","); 

    while (scanner.hasNextLine()) { 
     inputLine = scanner.nextLine(); 
     String [] line = inputLine.split(","); 

     for (int x = 0; x < 2; x++) { 
      students[rowc][x] = line[x]; 
     } 
     if (rowc < 9) { 
      rowc++; 
     } 
     else { 
      break; 
     } 
    } 
    System.out.println(Arrays.deepToString(students)); 
    scanner.close(); 
    Scanner input = new Scanner(new File("/IR101.csv")); 
    input.useDelimiter(","); 
    while (input.hasNext()) { 
     inputLine = input.nextLine(); 
     String[] line = inputLine.split(","); 
     for (int i = 0; i < 1; i++) { 
      System.out.println(line[0]); 
      System.out.println(students[0][i]); 
      if (line[0].equals(students[0][i])) { 
       students[2][i] = line[0]; 
      } 
     } 
    } 
    System.out.println(Arrays.deepToString(students)); 

} 
} 

, ama ben daha çok çalışıyordu ederim. Her neyse, dosyaya nasıl girerim ve her bir öğeyi karşılık gelen dizenin onları birbirine bağladığı dizinin 3. sütununa eklerim?

Teşekkürler.

+1

Bir csv okuyucu kullanmalısınız değil tarayıcı kodunuzu göz temizleyici yapacaktır. – StackFlowed

cevap

0

Umarım sorununuzu doğru anladım. Senin durumunda

, sen belleğe 3 csv yüklemek ve daha sonra döngü diziler ( için başka içine için ) aracılığıyla ve diğer (dizeleri üzerinde anahtarla eşleşen bir dizinin anahtarlarını kontrol edebilir onları bağlar ve onları bağlar.

ipucu: Öğrencilere ilklendireceğiniz böyle bağlıyor:

students[rowc] = line;