Итак, я написал свою строку в файл (написал «\ n» как «\ n», чтобы они отображались как «\ n») Но когда я получаю строку обратно из файла, который он не разделяет на «\ n». Я знаю, что строка является то, что я хочу, чтобы это было, но, как вы можете видеть на скриншоте: http://imgur.com/VUcMPeVРазделение на « n» Java
раскол превращается в список только один элемент (который является всей строкой, а также почему он выходит из строя когда я пытаюсь получить столбец [1]), и он не разбивается на «\ n».
Может ли кто-нибудь из вас помочь мне разобраться, почему?
Вот код, как показано в ScreenShow (но без вывода на консоль)
public void loadGame(String boardInput){
String column[] = boardInput.split("\n");
System.out.println(column[0]);
boardWidth = column[1].length();
for (int y = 0; y < column.length; y++){
if (column[y].contains("@") || column[y].contains("+")){
currentY = y;
}
ArrayList<Cell> row = new ArrayList<Cell>();
String Chars[] = column[y].split("");
for (int x = 0; x < column[y].length(); x++){
if (Chars[x].equals("@") || Chars[x].equals("+")){
currentX = x;
}
if (Chars[x].equals(".") || Chars[x].equals("+") || Chars[x].equals("*")){
row.add(new Cell(Chars[x], true));
} else {
row.add(new Cell(Chars[x], false));
}
}
board.add(row);
}
}
И это значение boardInput: *######*\n# @ #\n# $ . #\n# #\n*######*
Есть ли 'boardInput.split (" \\ n ");' работа? –
* "написал" \ n "s как" \ n ", чтобы они выглядели как" \ n "" * Почему, почему? ... Недостаточно символов/строк для использования в качестве разделителей. использовать точно '\ n' ... – m0skit0
Я бы попытался разделить (" \\ n "). ... edit: to slow .. – griFlo