我陷入了一个似乎无法解决的问题。拆分时,我应该能够获取 ID,名称,并 通过设置 row [0],row [1],row [2]进行检查
。奇怪的是,只有row [0](id)似乎有效。 名称,检查 给我一个错误。有人可以进一步帮助我吗?
数据示例:
id,name,check
1,john,0
1,patrick,0
1,naruto,0
码:
ArrayList<String> names = new ArrayList<String>();
try {
DataInputStream dis = new DataInputStream(openFileInput(listLocation(listLoc)));
BufferedReader br = new BufferedReader(new InputStreamReader(dis));
String line;
while ((line = br.readLine()) != null) {
String[] row = line.split(Pattern.quote(","));
//names.add(row[0]); // id
names.add(row[1]); // name // ERROR AT THIS LINE
//names.add(row[2]); // check
}
br.close();
}
catch (IOException e) {
e.printStackTrace();
}
错误信息:
Caused by: java.lang.ArrayIndexOutOfBoundsException: length=1; index=1
解决了
似乎文件末尾的值(问号)不正确。删除此行时。我的代码正常工作(没有Patter.quote)。谢谢大家的快速答复。第一个答案帮助我提醒我在我可以看到“错误值”的地方使用对数值。我的错。
大概在那个时候:
String[] row = line.split(",");
被调用时,您尝试读取的文件/流行中没有逗号(,)。
我在这里看到过许多类似的线程,但我的问题是,我的程序实际上是在不同的设置下运行的。 例如:当我的矩阵是 对于2个核心:错误11 对于4,8,16等工作正常。 矩阵: 对于任何核心设置:错误11。 我不明白为什么会发生这种情况,每个过程都需要一个2048/(总过程)X 2028矩阵来计算。它应该工作正常。 以下是我声明矩阵的方式: 接收: 和发送: 我不明白,它应该起作用了。你认为这可能是内存问题,
我的C++代码如下所示,问题是它输出的是“=======”,但之后却说“分段错误”。我真的不明白这个分割错误。有人能告诉我代码的哪一部分错了吗?
如何解决composer中的分段错误?安装后会发生这种情况 /c/ProgramData/ComposerSetup/bin/composer:第18行:1024分段错误php"${dir}/composer.phar"$*
根据其他建议,取消引用可能会出现问题,但我在调用max_element函数时甚至在取消引用之前就出现了分段错误。 最小可复制示例:
我有一个字符串a如下 我想用拆分这个字符串。所以我使用了以下代码来拆分它 获得: 需要< code>split.length: 我不明白我做错了什么。无论我使用什么正则表达式,我都得到相同的结果。此外,我无法修改字符串。 谁能帮我把作为数组长度。
问题内容: 我正在尝试读取文件,并用逗号在每行中拆分一个单元格,然后仅显示包含有关纬度和经度信息的第一和第二个单元格。这是文件: 时间, 纬度,经度 ,类型2015-03-20T10:20:35.890Z, 38.8221664,-122.7649994 ,地震 2015-03-20T10 :18:13.070Z, 33.2073333,-116.6891667 ,地震 2015-03-20T10