这是我目前遇到的问题。这是我的代码:
String[] sArray = new String[maxEntries*2];
for (int i = 0; i != (maxEntries*2); i++)
{
sArray[i] = lines[i].split(",");
}
而lines []是一个已经从.csv文件中读取数据的数组 例如,如果我将'i'替换为0,则前面的代码将工作,但我需要拆分整个行[]数组的数据。 但是,我反复收到以下错误消息:
error: incompatible types: String[] cannot be converted to String
sArray[i] = lines[i].split(",");
^
任何帮助都会非常感激!
答案 0 :(得分:2)
sArray
是一个String数组,因此sArray[i]
是一个String。
split(String str)
方法返回一个数组。
您正在尝试为字符串变量提供数组值。 sArray必须是String数组的数组
答案 1 :(得分:1)
split
返回String
数组。如果您想要第一个元素,可以使用sArray[i] = lines[i].split(",")[0];
。如果要迭代列,请将0
替换为i
。
您尝试做的可能是:
String[][] myata = new String[maxEntries*2];
for (int i = 0; i != (maxEntries*2); i++)
{
myData[i] = lines[i].split(",");
}
通过这种方式,您可以获得字符串数组中每一行的数据,并且这些数组的数组更大。
答案 2 :(得分:0)
你必须改变
sArray[i] = lines[i].split(",");
到
sArray = lines[i].split(",");
答案 3 :(得分:0)
使用.split(“,”);在for中将.csv数据拆分成数组 循环?
这是一个编译时错误,即 String []无法转换为String 因为您正在尝试将String数组分配给String变量。
for (int i = 0; i != (maxEntries * 2); i++) {
String s = lines[i];
sArray = s.split(",");
}