gpt4 book ai didi

java - 在扫描仪中使用分隔符;忽略空格和换行符

转载 作者:太空宇宙 更新时间:2023-11-04 10:13:31 25 4
gpt4 key购买 nike

美好的一天,

我正在尝试使用扫描仪读取txt文件,并将字符保存到二维字符串数组中。 txt文件由8行字符组成,不以空格分隔。如果它们由空格分隔,或者(包括分隔符)如果字符全部在一行中,则我的程序可以工作(如果删除分隔符)。

如果有人能告诉我如何正确保存字符,我将不胜感激。问题出在 Read() 函数中,带有双 for 循环。我尝试添加另一个分隔符 (s.useDelimiter(s.nextLine())) 但我不知道如何实现它。

请记住,这是我第一次使用文件扫描仪,而且我只是在学习编程,因此我的代码不会很高级。

亲切的问候,马修

import java.util.Scanner;
import java.io.File;
import java.io.FileNotFoundException;

public class BoardFile {

String[][] board = new String[8][8];
Scanner s;

// Print the board
public void Printboard() {
for (int i = 0; i < 8; i++) {
for (int j = 0; j < 8; j++) {
System.out.print(board[i][j]);
}
System.out.println();
}
}

public void Open() {
try {
s = new Scanner(new File("**TXT FILE PATHNAME HERE**"));
} catch (FileNotFoundException e) {
System.out.println("Error");
}
}

public void Read() {
s.useDelimiter("");
for (int i = 0; i < 8; i++) {
for (int j = 0; j < 8; j++) {
String a = s.next();
board[i][j] = a;
}
}
}

public static void main(String[] args) {
BoardFile a = new BoardFile();
a.Open();
a.Read();
a.Printboard();
}
}

txt文件: https://www.dropbox.com/s/k8fkneg2dcw0cbe/abcde.txt?dl=0

最佳答案

使用扫描仪的 nextline() 和 split() 函数将结果读入二维数组

public void Read() {
for (int i = 0; i < 8; i++) {
board[i]= s.nextLine().split("");
}
}

关于java - 在扫描仪中使用分隔符;忽略空格和换行符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52025051/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com