1 package tim.prune.load;
3 import java.io.BufferedReader;
5 import java.io.FileReader;
6 import java.io.IOException;
7 import java.util.ArrayList;
10 * Class to load the contents of a file
11 * into an array for later retrieval
13 public class FileCacher extends ContentCacher
17 * @param inFile File object to cache
19 public FileCacher(File inFile)
26 * Load the specified file into memory
28 private void loadFile(File inFile)
30 ArrayList<String> contentList = new ArrayList<String>();
31 if (inFile != null && inFile.exists() && inFile.canRead())
33 BufferedReader reader = null;
36 reader = new BufferedReader(new FileReader(inFile));
37 String currLine = reader.readLine();
38 if (currLine != null && currLine.startsWith("<?xml")) {
39 return; // it's an xml file, it shouldn't use this cacher
41 while (currLine != null)
43 if (currLine.indexOf('\0') >= 0)
46 return; // it's a binary file, shouldn't use this cacher
48 if (currLine.trim().length() > 0)
49 contentList.add(currLine);
50 currLine = reader.readLine();
53 catch (IOException ioe) {}
56 // close file ignoring errors
59 if (reader != null) reader.close();
61 catch (Exception e) {}
64 setContents(contentList);