Java reading a file into an ArrayList?
How do you read the contents of a file into an ArrayList<String>
in Java?
Here are the file contents:
cat
house
dog
.
.
.
Just read each word into the ArrayList
.
Solution 1:
This Java code reads in each word and puts it into the ArrayList:
Scanner s = new Scanner(new File("filepath"));
ArrayList<String> list = new ArrayList<String>();
while (s.hasNext()){
list.add(s.next());
}
s.close();
Use s.hasNextLine()
and s.nextLine()
if you want to read in line by line instead of word by word.
Solution 2:
You can use:
List<String> list = Files.readAllLines(new File("input.txt").toPath(), Charset.defaultCharset() );
Source: Java API 7.0
Solution 3:
A one-liner with commons-io:
List<String> lines = FileUtils.readLines(new File("/path/to/file.txt"), "utf-8");
The same with guava:
List<String> lines =
Files.readLines(new File("/path/to/file.txt"), Charset.forName("utf-8"));