繁体   English   中英

读取.txt文件并存储在二维Char数组中

[英]Read .txt file and store in 2-D char array java

我有点卡住。 我如何使它工作或有更好的方法? 请提供代码示例。

public char[][] charmap = new char[SomeInts.amount][SomeInts.amount];
public void loadMap() throws IOException{
    BufferedReader in = new BufferedReader(new FileReader("map1.txt"));
    String line = in.readLine();
    while (line != null){
        int y = 0;
        for (int x = 0; x < line.length(); x++){

            //Error
            charmap[x][y] = line[x];
            //
        }
        y++;
    }
}

语法line[x]保留用于数组。 字符串不是数组。 您可以使用String#charAt方法并编写:

charmap[x][y] = line.charAt(x);

使用String.charAt(int)从字符串中获取字符。

尝试这个。

char[][] mapdata = new char[SomeInts.amount][SomeInts.amount];

public void loadMap() throws IOException{
    BufferedReader in = new BufferedReader(new FileReader("map1.txt"));
    String line = in.readLine();
    ArrayList<String> lines = new ArrayList<String>();
    // Load all the lines
    while (line != null){
        lines.add(line);
    }
    // Parse the data
    for (int i = 0; i < lines.size(); i++) {
        for (int j = 0; j < lines.get(i).length(); j++) {
            mapdata[j][i] = lines.get(i).charAt(j);
        }
    }
}

希望这可以帮助。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM