所以我试图计算数组中有多少行,但我不知道该怎么做。我写了这段代码,它读取文件并将内容放入数组中。我怎样才能计算数组中的行数?
public static void main(String[] args) throws IOException {
File file = new File("array_list.csv");
FileInputStream fin = null;
try {
fin = new FileInputStream(file);
byte fileContent[] = new byte[(int)file.length()];
fin.read(fileContent);
String fileToArray = new String(fileContent);
//print file
System.out.println(fileToArray);
}
finally {
if (null != fin) {
fin.close();
}
}
}
这是文件array_list.csv
的内容569, 985, 97, 13,-94,256, 31, 74, 569,
-45, 601, 29, 19,-1952, 88,256,-69, 601,
1952, 1952,-15, 5,-54, 60, 89, 91, 39,
-601,-97, -6,-26, 89,-66,-601, 26, 28,
-51,-91, 39, 88, 99, 985, -7, 39,-29,
92, 1, 92, 92, 27,-11,-601, 22,-58,
13,-92, 28,-40, 27,-73, 0, 22, 33
我尝试使用fileToArray.length bit explipse返回一个Exception
Exception in thread "main" java.lang.Error: Unresolved compilation problem:
length cannot be resolved or is not a field
答案 0 :(得分:0)
它应该是fileToArray.length;
答案 1 :(得分:0)
您可以将此字符串参数传递给它应该工作的下面的代码。
int count = new StringTokenizer(fileToArray, "\r\n").countTokens();
System.out.println(count);
答案 2 :(得分:0)
可以尝试用逗号分割fileToArray字符串并计算长度吗?
int rowCount = fileToArray.split(",").length
答案 3 :(得分:0)
您实际上已将内容转换为字符串:
String fileToArray = new String(fileContent)
所以你实际上必须计算字符串中的行('\n'
)。
你可以用
System.out.println(d.replaceAll("\n","").length() - d.replaceAll("\n","").length());