我已經嘗試將檔案轉換為 String [] [] 好幾天了,但我仍然有錯誤。我不知道如何繼續。
String[][] lecture_tab;
public void readLines() throws IOException {
BufferedReader br = new BufferedReader(new FileReader("lvl1.txt"));
int i = 0;
while (i < 15) {
for (String line; (line = br.readLine()) != null; ) {
System.out.println(line);
this.lecture_tab[i] = line;
i = 1;
}
}
System.out.println(lecture_tab);
}
文本檔案如下所示:
###################
###################
###################
###################
###################
###################
###################
###################
###################
###################
###################
###################
###################
###################
###################
/!\ UPDATE /!\ : 聽了你的建議后,我終于可以做我想做的事了。差不多,當我嘗試顯示我的矩陣時,只顯示了第一行,其他 14 行是空的......
public void readLines() throws IOException {
BufferedReader br = new BufferedReader(new FileReader("lvl1.txt"));
for (int i = 0; i < lecture_tab.length; i ) {
for (String line; (line = br.readLine()) != null;) {
for(int j = 0; j < 19; j ) {
this.lecture_tab[i][j] = line.charAt(j);
}
}
}
for (int i = 0; i < this.lecture_tab.length; i ) {
for (int j = 0; j < this.lecture_tab[i].length; j ) {
System.out.print(this.lecture_tab[i][j]);
}
System.out.println();
}
}
輸出 :
###################
uj5u.com熱心網友回復:
問題是當你這樣做時:
this.lecture_tab[i] = line;
line是一個字串,并且this.lecture_tab[i]是一個字串[]。
如果您想在每個字串中有一個單獨的字符,您可以使用:
public void readLines() throws IOException {
BufferedReader br = new BufferedReader(new FileReader("lvl1.txt"));
int i = 0;
while (i < 15) {
for (String line; (line = br.readLine()) != null; ) {
System.out.println(line);
for(int j = 0; j < line.lenght(); j ) {
this.lecture_tab[i][j] = "" line.charAt(j);
}
i = 1;
}
}
System.out.println(lecture_tab);
}
在這種情況下,我會建議將 talk_tab 更改為 char ( char[][] lecture_tab;)的二維陣列
uj5u.com熱心網友回復:
如果您在每個“單元格”中想要的是單個字符,則可以使用字符陣列。您還可以利用該toCharArray(String)方法進行轉換。
你需要這樣的東西:
public static void main(String[] args) throws IOException {
char[][] lecture_tab = new char[15][];
BufferedReader br = new BufferedReader(new FileReader("lvl1.txt"));
int i = 0;
while (i < 15) {
for (String line; (line = br.readLine()) != null; ) {
System.out.println(line);
lecture_tab[i] = line.toCharArray();
i = 1;
}
}
System.out.println(lecture_tab);
}
uj5u.com熱心網友回復:
你可以使用這個:-
BufferedReader abc = new BufferedReader(new FileReader(myfile));
List<String> lines = new ArrayList<String>();
while((String line = abc.readLine()) != null) {
lines.add(line);
System.out.println(data);
}
abc.close();
// If you want to convert to a String[]
String[] data = lines.toArray(new String[]{});
轉載請註明出處,本文鏈接:https://www.uj5u.com/qukuanlian/362617.html
