java - 使用Java读取Json文件

标签 java json multidimensional-array

我有一个 JSON 文件,如下所示:

[[10,5,0,...,1,8], [3,6,3,...,6,3], [15,7,2,...,1,1], [8,7,4,...,8,3], [...], [6,11,0,...,5,1]]

nXm 矩阵。 (n 和 m 未知)。

我想在Java上进行操作(计算)。我正在考虑将其读取/输入到Java中的二维数组中。我是否使用 BufferReader 将 JSON 文件视为文本文件,或者是否有更简单的方法在 Java 上读取/操作它?我应该如何创建未知大小的二维数组?

谢谢

最佳答案

您可以使用这个库:

http://www.json.org/java/

然后您可以使用 BufferedReader 将文件读入 String,关闭阅读器并执行如下操作:

JSONArray ja = new JSONOArray(string);
int[][] result = new int[ja.length()][];
for (int i = 0; i < ja.length(); i++) {
    JSONAarray ja2 = ja.getJSONArray(i);
    result[i] = new int[ja2.length()];
    for (int j = 0; j < ja2.length(); j++) {
        result[i][j]=ja2.getInt(j);
    }
}

我尚未测试此代码,您可能还想添加一些错误检查并提取局部变量,具体取决于您对文件格式正确的确定程度。这并不假设您的文件包含矩形矩阵。

关于java - 使用Java读取Json文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28100698/

相关文章:

java - 在学校和家里使用不同的 Java JDK 版本使用 NetBeans 进行编程

java - Spring如何只通过形式参数名称匹配查询参数?

php - JSON 数据到 UL

jquery - 如何在asp.net MVC 4中通过ajax请求下载文件

javascript - 如何为每一行创建多维数组?

java - Java中字符串相减2等于null

java - 用于截断字符串的正则表达式

.NET Core 3 System.Text.Json 嵌套对象序列化

C:打印二维数组的问题

c - C中的二维数组