Changeset 32130 in osm for applications/editors/josm/plugins/opendata/src
- Timestamp:
- 2016-03-27T23:17:02+02:00 (9 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
applications/editors/josm/plugins/opendata/src/org/openstreetmap/josm/plugins/opendata/core/io/geographic/KmlReader.java
r32127 r32130 9 9 import java.util.List; 10 10 import java.util.Map; 11 import java.util.regex.Pattern; 11 12 12 13 import javax.xml.stream.FactoryConfigurationError; … … 32 33 33 34 public static final String KML_PLACEMARK = "Placemark"; 34 public static final String KML_NAME 35 public static final String KML_NAME = "name"; 35 36 public static final String KML_COLOR = "color"; 36 37 public static final String KML_SIMPLE_DATA = "SimpleData"; … … 43 44 public static final String KML_COORDINATES = "coordinates"; 44 45 46 public static Pattern COLOR_PATTERN = Pattern.compile("\\p{XDigit}{8}"); 45 47 46 48 private XMLStreamReader parser; … … 54 56 InputStreamReader ir = UTFInputStreamReader.create(in); 55 57 XMLStreamReader parser = XMLInputFactory.newInstance().createXMLStreamReader(ir); 56 //XMLStreamReader parser = XMLInputFactory.newInstance().createXMLStreamReader(in, UTF8);57 58 return new KmlReader(parser).parseDoc(); 58 59 } … … 92 93 if (parser.getLocalName().equals(KML_COLOR)) { 93 94 String s = parser.getElementText(); 94 // KML color format is aabbggrr, convert it to OSM (web) format: #rrggbb 95 String rgbColor = '#'+s.substring(6,8)+s.substring(4,6)+s.substring(2,4); 96 tags.put(KML_COLOR, rgbColor); 95 if (COLOR_PATTERN.matcher(s).matches()) { 96 // KML color format is aabbggrr, convert it to OSM (web) format: #rrggbb 97 tags.put(KML_COLOR, '#'+s.substring(6,8)+s.substring(4,6)+s.substring(2,4)); 98 } 97 99 } else if (parser.getLocalName().equals(KML_NAME)) { 98 100 tags.put(KML_NAME, parser.getElementText());
Note:
See TracChangeset
for help on using the changeset viewer.