aboutsummaryrefslogtreecommitdiffstats
path: root/main/src/cgeo/geocaching/files/LocParser.java
diff options
context:
space:
mode:
authorBananeweizen <Bananeweizen@gmx.de>2012-12-29 16:11:04 +0100
committerBananeweizen <Bananeweizen@gmx.de>2012-12-29 16:11:04 +0100
commit8ab924a6c016c0129cccaffa546a896892f36dcc (patch)
treee3589ff77c2b91c0910d38af55089c1932297318 /main/src/cgeo/geocaching/files/LocParser.java
parent7d6c8ca06ab9c7833875fdd77bacd2471a9e5a41 (diff)
downloadcgeo-8ab924a6c016c0129cccaffa546a896892f36dcc.zip
cgeo-8ab924a6c016c0129cccaffa546a896892f36dcc.tar.gz
cgeo-8ab924a6c016c0129cccaffa546a896892f36dcc.tar.bz2
#1987: Not able to import *.loc file from GC.com
Diffstat (limited to 'main/src/cgeo/geocaching/files/LocParser.java')
-rw-r--r--main/src/cgeo/geocaching/files/LocParser.java29
1 files changed, 17 insertions, 12 deletions
diff --git a/main/src/cgeo/geocaching/files/LocParser.java b/main/src/cgeo/geocaching/files/LocParser.java
index 982ef4c..9c24d39 100644
--- a/main/src/cgeo/geocaching/files/LocParser.java
+++ b/main/src/cgeo/geocaching/files/LocParser.java
@@ -140,6 +140,7 @@ public final class LocParser extends FileParser {
cache.setType(CacheType.UNKNOWN); // type is not given in the LOC file
cache.setListId(listId);
cache.setDetailed(true);
+ cache.store(null);
}
Log.i("Caches found in .loc file: " + caches.size());
return caches;
@@ -167,21 +168,25 @@ public final class LocParser extends FileParser {
}
final Matcher matcherDifficulty = patternDifficulty.matcher(pointString);
- if (matcherDifficulty.find()) {
- cache.setDifficulty(Float.parseFloat(matcherDifficulty.group(1).trim()));
- }
+ try {
+ if (matcherDifficulty.find()) {
+ cache.setDifficulty(Float.parseFloat(matcherDifficulty.group(1).trim()));
+ }
- final Matcher matcherTerrain = patternTerrain.matcher(pointString);
- if (matcherTerrain.find()) {
- cache.setTerrain(Float.parseFloat(matcherTerrain.group(1).trim()));
- }
+ final Matcher matcherTerrain = patternTerrain.matcher(pointString);
+ if (matcherTerrain.find()) {
+ cache.setTerrain(Float.parseFloat(matcherTerrain.group(1).trim()));
+ }
- final Matcher matcherContainer = patternContainer.matcher(pointString);
- if (matcherContainer.find()) {
- final int size = Integer.parseInt(matcherContainer.group(1).trim());
- if (size >= 1 && size <= 8) {
- cache.setSize(SIZES[size - 1]);
+ final Matcher matcherContainer = patternContainer.matcher(pointString);
+ if (matcherContainer.find()) {
+ final int size = Integer.parseInt(matcherContainer.group(1).trim());
+ if (size >= 1 && size <= 8) {
+ cache.setSize(SIZES[size - 1]);
+ }
}
+ } catch (NumberFormatException e) {
+ Log.e("LocParser.parseCache", e);
}
return cache;