Java将文件读入char二维数组

标签 java arrays char

大家。我想了三个小时,就是想不出来。 我有一个程序需要将文件读入二维数组。 该文件如下:

...##..#####........
########....####..##
.........##.........
#.#.#.#.#.#.#.#.#.#.

基本上,这是一个座位预订系统。

“.”表示空座。 “#”表示预留座位。 我不知道行和列,取决于文件。但每一排的座位数都是相同的。

import java.util.Scanner;
import java.io.*;
import java.io.BufferedReader;
import java.io.FileReader;
import java.util.Arrays;


public class Main 
{   


public static void main(String[] args)  throws Exception 
{


    int rows = 0, cols = 0;
    char[][] auditorium = new char[rows][cols];

    Scanner sc = new Scanner(new BufferedReader(new FileReader("A1.txt")));

 }

我是java新手,对这个程序真的没有任何想法。请阅读文件并输入数据 转换为 char 二维数组。

最佳答案

请检查此代码。它可能对你有帮助:

public static void main(String[] args) throws Exception {
    List<String> stringList = new ArrayList<>();
    Scanner sc = new Scanner(new BufferedReader(new FileReader("A1.txt")));
    while (sc.hasNext()) {
        stringList.add(sc.nextLine());
    }
    int rows = stringList.size();
    int cols = 0;
    if (rows > 0) {
        cols = stringList.get(0).length();
    }
    char[][] auditorium = new char[rows][cols];
    for (int i = 0; i < rows; i++) {
        for (int j = 0; j < cols; j++) {
            auditorium[i][j] = stringList.get(i).charAt(j);
        }
    }
}

关于Java将文件读入char二维数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60048853/

相关文章:

java - 定义了 equals 和 hashCode,arrayList 方法仍然不起作用

java - 在 hadoop : Type Mismatch 中链接作业

java - 解析 XML 时出错 : unbound prefix (External library)

c - C 中的加密数组

c++ - 将int转换为int值的char

java - 什么是 Hibernate 中的集合元素生命周期

c# - 将一个值与整个数组进行比较? (C#)

javascript - String 和 Array 泛型方法将在未来被弃用

c# - 文件读取外来字符

java - 为什么在 Java 中 `char` 转换为 `int` 而不是 `short` 或 `byte`?