我已經將數據文件導入到ArrayList中。我的問題是,雖然它打印出文件中的所有名字,但它不會給我正確的大小。相反,它只是打印出1.爲什麼.size()在這個ArrayList上不能正常工作?
import java.io.File;
import java.io.FileNotFoundException;
import java.util.ArrayList;
import java.util.Scanner;
public class TestArray {
public static void main (String [] args){
String filePath = "C:\\Users\\Admin\\workspace\\Fund III\\src\\names.dat";
Scanner sc = null;
try {
sc = new Scanner(new File (filePath));
} catch (FileNotFoundException e1) {
// TODO Auto-generated catch block
e1.printStackTrace();
}
//Makes Array list
ArrayList<String> nameList = new ArrayList<String>();
//Dumps names into array
try{
while(sc.hasNextLine())
{
nameList.add(sc.nextLine());
}
}
catch(Exception e)
{
System.out.println("Error: " + e);
}
System.out.println(nameList.size());
System.out.println(nameList);
}
}
誰說1不是正確的尺寸?也許這份名單裏只有一件*事情。 – Makoto
你的文件結構如何?所有的名字都在一行上嗎? –
如果您將Linux文件加載到在Windows上運行的Java進程(反之亦然),則掃描程序可能無法正確識別「換行符」並將內容視爲單行。 – Brad