Advertisement
Agrael

Untitled

Jan 19th, 2018
78
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.38 KB | None | 0 0
  1. import java.io.IOException;
  2. import java.nio.file.Files;
  3. import java.nio.file.Paths;
  4. import java.util.ArrayList;
  5. import java.util.List;
  6. import java.util.stream.Collectors;
  7. import java.util.stream.Stream;
  8.  
  9. public class FileParser {
  10.  
  11. public float[][] getMatrixFromFile(String filename) throws IOException {
  12. Stream<String> stream = Files.lines(Paths.get(filename));
  13.  
  14. List<String> lines = stream.collect(Collectors.toList());
  15.  
  16. int size = getMatrixSize(lines.get(0));
  17. float[][] matrix = new float[size][size+1];
  18.  
  19. int row = 0;
  20. int col = 0;
  21. for (String line : lines.subList(1, lines.size() - 1)) {
  22. for (String s : line.split(" ")) {
  23. try {
  24. matrix[row][col] = Float.parseFloat(s);
  25. col += 1;
  26. } catch (NumberFormatException e) {}
  27. }
  28. row += 1;
  29. col = 0;
  30. }
  31. fillLastColumn(matrix, lines.get(lines.size() -1));
  32. return matrix;
  33. }
  34.  
  35. private int getMatrixSize(String line) {
  36. return Integer.parseInt(line);
  37. }
  38.  
  39. private void fillLastColumn(float[][] matrix, String line) {
  40. int row = 0;
  41. int col = matrix.length;
  42. for (String s : line.split(" ")) {
  43. matrix[row][col] = Float.parseFloat(s);
  44. row += 1;
  45. }
  46. }
  47. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement