28
28
import org .apache .commons .csv .CSVFormat ;
29
29
import org .apache .commons .csv .CSVParser ;
30
30
import org .apache .commons .csv .CSVRecord ;
31
+ import org .apache .commons .io .input .BOMInputStream ;
31
32
32
33
public class GTFSReadIn {
33
34
private static Hashtable <String , Route > allRoutes ;
34
35
private static final String ROUTE_KEY = "route_ref" ;
35
36
private static final String NTD_ID_KEY = "ntd_id" ;
36
- private static final String UTF8_BOM = "\uFEFF " ;
37
37
38
38
private List <Stop > stops ;
39
39
@@ -79,7 +79,7 @@ public List<Stop> readBusStop(String fName, String agencyName, String routes_fNa
79
79
String [] elements ;
80
80
int stopIdKey =-1 , stopNameKey =-1 , stopLatKey =-1 , stopLonKey =-1 ;
81
81
try {
82
- BufferedReader br = new BufferedReader (new InputStreamReader (new FileInputStream (fName ),"UTF-8" ));
82
+ BufferedReader br = new BufferedReader (new InputStreamReader (new BOMInputStream ( new FileInputStream (fName ) ),"UTF-8" ));
83
83
HashMap <String ,Integer > keysIndex = new HashMap <String ,Integer > ();
84
84
thisLine = br .readLine ();
85
85
StringReader sr = new StringReader (thisLine );
@@ -224,7 +224,7 @@ public Hashtable<String, Route> readRoutes(String routes_fName){
224
224
int routeIdKey =-1 , routeShortNameKey =-1 ,routeLongNameKey =-1 ;
225
225
226
226
try {
227
- BufferedReader br = new BufferedReader (new InputStreamReader (new FileInputStream (routes_fName ), "UTF-8" ));
227
+ BufferedReader br = new BufferedReader (new InputStreamReader (new BOMInputStream ( new FileInputStream (routes_fName )), "UTF-8" ));
228
228
HashMap <String ,Integer > keysIndex = new HashMap <String ,Integer > ();
229
229
thisLine = br .readLine ();
230
230
StringReader sr = new StringReader (thisLine );
@@ -341,7 +341,7 @@ public Hashtable<String, HashSet<Route>> matchRouteToStop(String routes_fName, S
341
341
342
342
// trips.txt read-in
343
343
try {
344
- BufferedReader br = new BufferedReader (new InputStreamReader (new FileInputStream (trips_fName ),"UTF-8" ));
344
+ BufferedReader br = new BufferedReader (new InputStreamReader (new BOMInputStream ( new FileInputStream (trips_fName ) ),"UTF-8" ));
345
345
CSVParser parser = CSVParser .parse (br , CSVFormat .DEFAULT .withHeader ());
346
346
for (CSVRecord csvRecord : parser ) {
347
347
@@ -361,7 +361,7 @@ public Hashtable<String, HashSet<Route>> matchRouteToStop(String routes_fName, S
361
361
Hashtable <String , HashSet <Route >> stopIDs = new Hashtable <String , HashSet <Route >>();
362
362
// stop_times.txt read-in
363
363
try {
364
- BufferedReader br = new BufferedReader (new InputStreamReader (new FileInputStream (stop_times_fName ), "UTF-8" ));
364
+ BufferedReader br = new BufferedReader (new InputStreamReader (new BOMInputStream ( new FileInputStream (stop_times_fName ) ), "UTF-8" ));
365
365
366
366
CSVParser parser = CSVParser .parse (br , CSVFormat .DEFAULT .withHeader ());
367
367
0 commit comments