X-Git-Url: http://gitweb.fperrin.net/?a=blobdiff_plain;f=tim%2Fprune%2Fload%2FFileCacher.java;h=a151c2e285022f48c5ffe8bbdf2c3d8433c09df0;hb=326f489e36aa7f235bc19409a57bf4955cd50f24;hp=733754bd83c0d98cdab258020907f89f98017430;hpb=312fec956e43f5d0a38617da5d0add9c62563e2c;p=GpsPrune.git diff --git a/tim/prune/load/FileCacher.java b/tim/prune/load/FileCacher.java index 733754b..a151c2e 100644 --- a/tim/prune/load/FileCacher.java +++ b/tim/prune/load/FileCacher.java @@ -12,7 +12,9 @@ import java.util.ArrayList; */ public class FileCacher { + /** File to cache */ private File _file = null; + /** Array to hold lines of file */ private String[] _contentArray = null; @@ -32,7 +34,7 @@ public class FileCacher */ private void loadFile() { - ArrayList contentList = new ArrayList(); + ArrayList contentList = new ArrayList(); if (_file != null && _file.exists() && _file.canRead()) { BufferedReader reader = null; @@ -40,8 +42,16 @@ public class FileCacher { reader = new BufferedReader(new FileReader(_file)); String currLine = reader.readLine(); + if (currLine != null && currLine.startsWith("= 0) + { + reader.close(); + return; // it's a binary file, shouldn't use this cacher + } if (currLine.trim().length() > 0) contentList.add(currLine); currLine = reader.readLine(); @@ -62,7 +72,7 @@ public class FileCacher int numLines = contentList.size(); _contentArray = new String[numLines]; for (int i=0; i inMaxWidth) - result[i] = result[i].trim(); - if (result[i].length() > inMaxWidth) - result[i] = result[i].substring(0, inMaxWidth); + if (result[i] == null) + result[i] = ""; + else + { + if (result[i].length() > inMaxWidth) + result[i] = result[i].trim(); + if (result[i].length() > inMaxWidth) + result[i] = result[i].substring(0, inMaxWidth); + } } } return result;