Wczytywanie stringów do tablicy pomiędzy liniami null

0

witam
Chciałem się was zapytać dlaczego gdy wczytuje dane z pliku tekstowego takiego

cos cos cos cos
cos cos cos cos
cos cos cos cos

to gdy kompiluje wyskakuje mi kilka nulli pomiędzy linijkami ?

public class Alogrytm_4 
{
 
     public static void main(String[] args) {
 
          System.out.println("Podaj nazwie pliku txt\nnp.liczby.txt");
          Scanner scan=new Scanner(System.in);
          String nazwa = scan.nextLine();
          String[][] m = createMatrixBasedOnGivenArray(getTxtFileContent(new File(nazwa)));
 
          for (String[] i : m) 
          {
               for (String j : i) 
               {
                    System.out.println(j);
               }
          }
     }
 
     public static ArrayList<String> getTxtFileContent(File file) 
     {
 
          BufferedReader reader;
          ArrayList<String> array = new ArrayList<String>();
 
          try {
               reader = new BufferedReader(new InputStreamReader(new FileInputStream(file)));
               String line;
 
               while((line = reader.readLine()) != null) {
                    array.add(line);
               }
               reader.close();
 
          } catch (IOException ex) {
               ex.printStackTrace();
          }
          return array;
     }
 
     public static String[][] createMatrixBasedOnGivenArray(ArrayList<String> array) 
     {
 
         String[] firstLine = array.get(0).split("\\s");
          String[][] plik_dane = new String[array.size()][firstLine[0].length()];
 
          try {
               for (int i = 0; i < array.size(); i++) {
                    String[] lineFromArray = array.get(i).split("\\s");
 
                    for (int j = 0; j < lineFromArray.length; j++) {
                         plik_dane[i][j] = lineFromArray[j].trim();
                    }
               }
          } catch (NullPointerException ex) {
               ex.printStackTrace();
          }
          return plik_dane;
     }
     
} 
0

spróbuj zmienić \\s na \\s+ w

String[] firstLine = array.get(0).split("\\s");

dodanie znaczników `` i <code class="java"> - @furious programming

0

W tym miejscu...

for (int j = 0; j < lineFromArray.length - 1; j++) { // ...musisz odjąć 1 od wartości lineFromArray.length.
	 plik_dane[i][j] = lineFromArray[j].trim();
}

Po tym zabiegu wczytuje mi wszystkie wartości do macierzy.

1 użytkowników online, w tym zalogowanych: 0, gości: 1