@@ -52,16 +52,32 @@ |
boolean NADPweeklyDataTF = true;//if true then weekly data will be downloaded for NADP stations |
boolean CDSNflowTF = true;//if true then flow data will be downloaded for CDSN stations |
boolean CDSNwqTF = true;//if true then water quality data will be downloaded for CDSN stations |
- String attributeFile = "Database\tOrg_ID\tStaID\tStaName\tLatitude\tLongitude\tCounty\tState\tCountry\tHUCNumber\tDrainArea\tElev\tElevUnits\tElevDatum\tBeginDate\tEndDate\tCoop_ID\tWBAN_ID\n" + |
- "USGS\tn/a\t07369654\tCoon Bayou Tributary near Tillar\t33.74982893\t-91.4115096\tDesha County\tARKANSAS\tUnited States\t8050002\t0.02\t145\tft\tNGVD29\t1995-03-05\t1996-12-16\tn/a\tn/a\n" + |
- "USGS Wells\tn/a\t332432091031501\tD0016 WASHINGTON\t33.409005\t-91.0542732\tWashington County\tMISSISSIPPI\tUnited States\t8030209\t\t125\tft\tNGVD29\t\t\tn/a\tn/a\n" + |
- "SNOTEL\tn/a\t330\tBeaver Divide\t40.61666667\t-111.1\tWasatch\tUTAH\tUnited States\t\t\t8280\tfeet\t\t1978-10-01\t\tn/a\tn/a\n" + |
- "STORET\t11NPSWRD\tCRLA_GSFRA_52\tPothole Creek (No.52 in GS report)\t42.936853\t-121.949314\tKLAMATH\tOREGON\t\t18010201\t--\t0\t\tNAD83\t\t\tn/a\tn/a\n" + |
- "NADP\tn/a\tCO21\tManitou\t39.1008\t-105.0933\tTeller\tCOLORADO\tUSA\t\t\t2362\tm\t\t1978-10-17\t\tn/a\tn/a\n" + |
- "CDSN\tCITYFTCO_WQX\tPBOXC\tCache La Poudre River above Boxelder Creek, Site C\t40.551282\t-105.008726\tLarimer\tCOLORADO\tUSA\t\t\t\t\t\t\t\tn/a\tn/a\n" + |
- "CDWR\tn/a\tDEUDITCO\tDEUEL SNYDER CANAL\t40.282657\t-103.848246\t\tColorado\tUnited States\t\t\t\t\t\t2008-03-31\t2014-09-25\tn/a\tn/a";//the contents of a tab-delimited input file |
- |
- |
+// String attributeFile = "Database\tOrg_ID\tStaID\tStaName\tLatitude\tLongitude\tCounty\tState\tCountry\tHUCNumber\tDrainArea\tElev\tElevUnits\tElevDatum\tBeginDate\tEndDate\tCoop_ID\tWBAN_ID\n" + |
+// "USGS\tn/a\t07369654\tCoon Bayou Tributary near Tillar\t33.74982893\t-91.4115096\tDesha County\tARKANSAS\tUnited States\t8050002\t0.02\t145\tft\tNGVD29\t1995-03-05\t1996-12-16\tn/a\tn/a\n" + |
+// "USGS Wells\tn/a\t332432091031501\tD0016 WASHINGTON\t33.409005\t-91.0542732\tWashington County\tMISSISSIPPI\tUnited States\t8030209\t\t125\tft\tNGVD29\t\t\tn/a\tn/a\n" + |
+// "SNOTEL\tn/a\t330\tBeaver Divide\t40.61666667\t-111.1\tWasatch\tUTAH\tUnited States\t\t\t8280\tfeet\t\t1978-10-01\t\tn/a\tn/a\n" + |
+// "STORET\t11NPSWRD\tCRLA_GSFRA_52\tPothole Creek (No.52 in GS report)\t42.936853\t-121.949314\tKLAMATH\tOREGON\t\t18010201\t--\t0\t\tNAD83\t\t\tn/a\tn/a\n" + |
+// "NADP\tn/a\tCO21\tManitou\t39.1008\t-105.0933\tTeller\tCOLORADO\tUSA\t\t\t2362\tm\t\t1978-10-17\t\tn/a\tn/a\n" + |
+// "CDSN\tCITYFTCO_WQX\tPBOXC\tCache La Poudre River above Boxelder Creek, Site C\t40.551282\t-105.008726\tLarimer\tCOLORADO\tUSA\t\t\t\t\t\t\t\tn/a\tn/a\n" + |
+// "CDWR\tn/a\tDEUDITCO\tDEUEL SNYDER CANAL\t40.282657\t-103.848246\t\tColorado\tUnited States\t\t\t\t\t\t2008-03-31\t2014-09-25\tn/a\tn/a";//the contents of a tab-delimited input file |
+ String atdtributeFile = "Database\tOrg_id\tstaid\tState\n" + |
+ "USGS\tn/a\t06752000\tcolorado\n" + |
+ "USGS\tn/a\t06752260\tcolorado\n" + |
+ "USGS\tn/a\t06752280\tcolorado\n" + |
+ "USGS\tn/a\t06752500\tcolorado\n" + |
+ "STORET\t21COL001\t000126\tcolorado\n" + //lincoln |
+ "STORET\t21COL001\t000027\tcolorado\n" + //greeley |
+ "STORET\tCITYFTCO\tPBOX\tcolorado\n" + |
+ "STORET\tCITYFTCO\tPLNC\tcolorado\n" + |
+ "STORET\t21COL001\t000026\tcolorado\n" + //canyon |
+ "STORET\t21COL001_WQX\tCO0040258-D/S\tcolorado\n" + //greeley |
+ "STORET\t21COL001_WQX\tCO0048860-D/S\tcolorado\n" + //greeley |
+ "STORET\t21COL001_WQX\tCO0020478-U/S\tcolorado\n" + //boxelder |
+ |
+ "STORET\t21COL001_WQX\tPOUDRE-370BOX\tcolorado\n" + //boxelder |
+ "STORET\t21COL001_WQX\tPOUDRE-432PLNC\tcolorado";//lincoln |
+ |
+ String attributeFile = "Database\tOrg_id\tstaid\tState\nUSGS\tn/a\t06752000\tcolorado\nUSGS\tn/a\t06752260\tcolorado\nUSGS\tn/a\t06752280\tcolorado\nUSGS\tn/a\t06752500\tcolorado\nSTORET\t21COL001\t000027\tcolorado\nSTORET\tCITYFTCO\tPBOX\tcolorado\nSTORET\tCITYFTCO\tPLNC\tcolorado\nSTORET\t21COL001\t000026\tcolorado\nSTORET\t21COL001\t000126\tcolorado\nSTORET\t21COL001_WQX\tCO0040258-D/S\tcolorado\nSTORET\t21COL001_WQX\tCO0048860-D/S\tcolorado\nSTORET\t21COL001_WQX\tCO0020478-U/S\tcolorado\nSTORET\t21COL001_WQX\tPOUDRE-370BOX\tcolorado\nSTORET\t21COL001_WQX\tPOUDRE-432PLNC\tcolorado";//lincoln |
//Outputs |
|
//Gets |
@@ -159,14 +175,18 @@ |
* @return |
* @throws IOException |
*/ |
- public ArrayList<String> writeOutputFile(ArrayList<String> textData, ArrayList<String> fileNameList, String fileName) throws IOException{ |
+ public ArrayList<String> writeOutputFile(ArrayList<String> textData, ArrayList<String> fileNameList, String fileName, String database) throws IOException{ |
String path = directory + "/" + fileName; |
FileWriter write = new FileWriter(path, false); |
PrintWriter print_line = new PrintWriter(write); |
|
//Output data to text file |
for(int i = 0; i < textData.size(); i++) { |
- print_line.printf("%s" + "\r\n", textData.get(i)); |
+ if(database.equalsIgnoreCase("STORET")){ |
+ print_line.printf("%s" + "\n", textData.get(i)); |
+ }else{ |
+ print_line.printf("%s" + "\r\n", textData.get(i)); |
+ } |
} |
print_line.close(); |
System.out.println("Text File located at:\t" + path); |
@@ -226,15 +246,15 @@ |
GroundwaterDataInterface groundwaterLib = GroundwaterData.getNewGroundwaterDataInterface("USGS", ""); |
if(USGSWellsDepthTF){ |
ArrayList<String> rawData = groundwaterLib.extractDepthToWaterTable_raw(currentAttributes[index_station_id], beginDate, endDate); |
- fileNameList = writeOutputFile(rawData, fileNameList, "USGSwells_" + currentAttributes[index_station_id] + "_DepthData.txt"); |
+ fileNameList = writeOutputFile(rawData, fileNameList, "USGSwells_" + currentAttributes[index_station_id] + "_DepthData.txt", currentAttributes[index_database]); |
} |
if(USGSWellsWatertableHeightTF){ |
ArrayList<String> rawData = groundwaterLib.extractDepthToWaterTable_raw(currentAttributes[index_station_id], beginDate, endDate); |
- fileNameList = writeOutputFile(rawData, fileNameList, "USGSwells_" + currentAttributes[index_station_id] + "_HeightData.txt"); |
+ fileNameList = writeOutputFile(rawData, fileNameList, "USGSwells_" + currentAttributes[index_station_id] + "_HeightData.txt", currentAttributes[index_database]); |
} |
if(USGSWellwqTF){ |
ArrayList<String> rawData = groundwaterLib.extractWaterQualityData_raw(currentAttributes[index_station_id], beginDate, endDate, "all"); |
- fileNameList = writeOutputFile(rawData, fileNameList, "USGSwells_" + currentAttributes[index_station_id] + "_WQData.txt"); |
+ fileNameList = writeOutputFile(rawData, fileNameList, "USGSwells_" + currentAttributes[index_station_id] + "_WQData.txt", currentAttributes[index_database]); |
} |
}else if(currentAttributes[index_database].equalsIgnoreCase("NADP")){ |
String NADPbeginDate = beginDate; |
@@ -246,15 +266,15 @@ |
AirDataInterface airLib = AirData.getNewAirDataDataInterface("NADP"); |
if(NADPannualDataTF){ |
ArrayList<String> rawData = airLib.extractAnnualDepositionData_raw(currentAttributes[index_station_id], NADPbeginDate, endDate, ""); |
- fileNameList = writeOutputFile(rawData, fileNameList, "NADP_" + currentAttributes[index_station_id] + "_AnnualData.csv"); |
+ fileNameList = writeOutputFile(rawData, fileNameList, "NADP_" + currentAttributes[index_station_id] + "_AnnualData.csv", currentAttributes[index_database]); |
} |
if(NADPmonthlyDataTF) { |
ArrayList<String> rawData = airLib.extractMonthlyDepositionData_raw(currentAttributes[index_station_id], NADPbeginDate, endDate, ""); |
- fileNameList = writeOutputFile(rawData, fileNameList, "NADP_" + currentAttributes[index_station_id] + "_MonthlyData.csv"); |
+ fileNameList = writeOutputFile(rawData, fileNameList, "NADP_" + currentAttributes[index_station_id] + "_MonthlyData.csv", currentAttributes[index_database]); |
} |
if(NADPweeklyDataTF) { |
ArrayList<String> rawData = airLib.extractWeeklyDepositionData_raw(currentAttributes[index_station_id], NADPbeginDate, endDate, ""); |
- fileNameList = writeOutputFile(rawData, fileNameList, "NADP_" + currentAttributes[index_station_id] + "_WeeklyData.csv"); |
+ fileNameList = writeOutputFile(rawData, fileNameList, "NADP_" + currentAttributes[index_station_id] + "_WeeklyData.csv", currentAttributes[index_database]); |
} |
|
}else if(currentAttributes[index_database].equalsIgnoreCase("SNOTEL")){ |
@@ -263,10 +283,11 @@ |
//String[][] flowData = (String[][]) returnArray[1]; |
//String start = (String) returnArray[2]; |
//String end = (String) returnArray[3]; |
- fileNameList = writeOutputFile(textData, fileNameList, "SNOTEL_" + currentAttributes[index_state] + "_" + currentAttributes[index_station_id] + ".csv"); |
+ fileNameList = writeOutputFile(textData, fileNameList, "SNOTEL_" + currentAttributes[index_state] + "_" + currentAttributes[index_station_id] + ".csv", currentAttributes[index_database]); |
|
}else{ |
WaterDataInterface waterLib = WaterData.getNewWaterDataInterface(currentAttributes[index_database], "", storetResourceFile); |
+ String stationId_fixed = currentAttributes[index_station_id].replace("/", ""); |
if((currentAttributes[index_database].equalsIgnoreCase("USGS") && USGSflowTF) || |
(currentAttributes[index_database].equalsIgnoreCase("STORET") && STORETflowTF) || |
(currentAttributes[index_database].equalsIgnoreCase("CDWR") && CDWRflowTF) || |
@@ -277,18 +298,18 @@ |
}catch(WaterDataException e){ |
rawData.add("There is no available flow data in the " + currentAttributes[index_database] + " database for station '" + currentAttributes[index_station_id] + "'."); |
} |
- fileNameList = writeOutputFile(rawData, fileNameList, currentAttributes[index_database] + "_" + currentAttributes[index_station_id] + "_FlowData.txt"); |
+ fileNameList = writeOutputFile(rawData, fileNameList, currentAttributes[index_database] + "_" + stationId_fixed + "_FlowData.txt", currentAttributes[index_database]); |
} |
if((currentAttributes[index_database].equalsIgnoreCase("USGS") && USGSwqTF) || |
(currentAttributes[index_database].equalsIgnoreCase("STORET") && STORETwqTF) || |
(currentAttributes[index_database].equalsIgnoreCase("CDSN") && CDSNwqTF) ) { |
ArrayList<String> rawData = new ArrayList<>(); |
try{ |
- rawData = waterLib.extractWaterQualityData_raw(directory, currentAttributes[index_org_id], currentAttributes[index_station_id], beginDate, endDate, "all"); |
+ rawData = waterLib.extractWaterQualityData_raw(directory, currentAttributes[index_org_id], currentAttributes[index_station_id], beginDate, endDate, "nitrogen"); |
}catch(WaterDataException e){ |
rawData.add("There is no available water quality data in the " + currentAttributes[index_database] + " database for station '" + currentAttributes[index_station_id] + "'."); |
} |
- fileNameList = writeOutputFile(rawData, fileNameList, currentAttributes[index_database] + "_" + currentAttributes[index_station_id] + "_WqData.txt"); |
+ fileNameList = writeOutputFile(rawData, fileNameList, currentAttributes[index_database] + "_" + stationId_fixed + "_WqData.txt", currentAttributes[index_database]); |
} |
if((currentAttributes[index_database].equalsIgnoreCase("USGS") && USGSfloodTF) ) { |
ArrayList<String> rawData = new ArrayList<>(); |
@@ -297,7 +318,7 @@ |
}catch(WaterDataException e){ |
rawData.add("There is no available flood data in the " + currentAttributes[index_database] + " database for station '" + currentAttributes[index_station_id] + "'."); |
} |
- fileNameList = writeOutputFile(rawData, fileNameList, currentAttributes[index_database] + "_" + currentAttributes[index_station_id] + "_FloodData.txt"); |
+ fileNameList = writeOutputFile(rawData, fileNameList, currentAttributes[index_database] + "_" + currentAttributes[index_station_id] + "_FloodData.txt", currentAttributes[index_database]); |
} |
if((currentAttributes[index_database].equalsIgnoreCase("USGS") && USGSstageDischargeTF) || |
(currentAttributes[index_database].equalsIgnoreCase("CDWR") && CDWRstageDischargeTF) ) { |
@@ -307,7 +328,7 @@ |
}catch(WaterDataException e){ |
rawData.add("There is no available stage-discharge (rating curve) data in the " + currentAttributes[index_database] + " database for station '" + currentAttributes[index_station_id] + "'."); |
} |
- fileNameList = writeOutputFile(rawData, fileNameList, currentAttributes[index_database] + "_" + currentAttributes[index_station_id] + "_StageDischargeData.txt"); |
+ fileNameList = writeOutputFile(rawData, fileNameList, currentAttributes[index_database] + "_" + currentAttributes[index_station_id] + "_StageDischargeData.txt", currentAttributes[index_database]); |
} |
} |
} |