Witam
jakiś czas temu zacząłem się uczyć języka java i na zajęciach dostałem zadanie o treści: Zmodyfikuj plik z zadania 4, wczytaj wszystkie wartości z pliku do tablicy. W zadaniu 4 chodziło o to , żeby utworzyć tablicę 10x10 , wypełnić ją losowymi wartościami i zapisać ją do pliku.Do zadania 5 napisałem następujący kod programu:
package lab6;
import java.util.Random;
import java.io.BufferedReader;
import java.io.FileReader;
import java.io.FileWriter;
import java.io.IOException;
import java.util.Random;
public class zad5 {
public static void main(String[] args)throws IOException {
//deklaracja tablicy i metody losującej.
int[][] zapis = new int[10][10];
String[][] odczyt = new String[10][10];
Random losuj = new Random();
//zapełnienie tablicy zapis.
for(int i=0; i<zapis.length; i++) {
for(int j=0; j<zapis.length; j++) {
zapis[i][j] = losuj.nextInt(51) +99;
}
}
//Wyświetlenie tablicy zapis.
for(int i=0; i<zapis.length; i++) {
for(int j=0; j<zapis.length; j++) {
System.out.print(zapis[i][j] + " ");
}
System.out.println();
}
// zapis do pliku.
String fileName = "Tablica.txt";
FileWriter fileWriter = null;
try {
fileWriter = new FileWriter(fileName);
//zapis tablicy do pliku csv.
for(int i=0; i<zapis.length; i++) {
for(int j=0; j<zapis.length; j++) {
fileWriter.write(zapis[i][j] + " \n");
}
}
}catch (IOException ex) {
System.out.println("Problem z dostępem do pliku");
}finally {
if(fileWriter == null) {
System.out.println("Problem");
}else {
fileWriter.close();
}
}
System.out.println("Odczyt z pliku");
//odczyt z pliku.
BufferedReader bf = null;
try {
bf = new BufferedReader( new FileReader(fileName));
String linia = null;
do {
linia = bf.readLine();
if(linia !=null) {
for(int i=0; i<odczyt.length; i++) {
for(int j=0; j<odczyt.length; j++) {
odczyt[i][j] = linia;
}
}
}
}while(linia !=null);
//Wyświetlenie tablicy odczyt.
for(int i=0; i<odczyt.length; i++) {
for(int j=0; j<odczyt.length; j++) {
System.out.println(odczyt[i][j]);
}
}
}catch(IOException ex) {
}finally {
}
}
}
ale wydaje mi się , że program nie działa poprawnie.Chodzi o to , że program losuje mi liczby do tablicy i zapisuje mi do pliku i dotąd jest wszystko ok ale gdy zapisuję ten plik do tablicy to ta tablica źle mi się wypełnia chodzi o to , że program losuje i zpisuje liczby np 128
122
114
112
118
100
122
111
126
123
114
136
146
107
102
138
121
111
100
119
124
138
122
107
101
131
142
100
122
116
117
127
125
133
116
107
133
126
138
142
125
101
140
130
109
148
99
126
119
104
107
116
108
117
129
135
139
146
102
140
104
133
142
131
100
146
132
140
135
104
105
100
123
130
131
104
147
101
140
111
128
135
130
121
140
111
110
130
106
104
110
144
145
103
109
110
140
106
134
126
ale jak zapisuje plik do tablicy to wygląda to tak że zapisuje mi z pliku tylko ostatnią cyfrę np jak ostatnia jest 126 t do tablicy zapisuje się ciągle 126 jak 108 to 108 itd. Czy ktoś może mi pomóc w znalezieniu i poprawie błędu żeby wszystko działało jak należy bo nie mogę sobie z tym poradzić.Z góry dziękuję
pozdrawiam.