全部。
我正在测试我的 Java 代码以从 PHP 网页获取天气数据(http://www.agroclimate.org/howard/GDD/getFAWNDailyData.php?loc=490&frommonth=6&fromday=26&fromyear=2009&tomonth=7&today=7&toyear=2009 )。
我的代码在我的计算机(win7、jre6 和 jre7)上运行良好。当我在网络浏览器(explorer9,chrome)中访问上述链接时,浏览器会下载“getFAWNDailyData.php”页面本身,而不是运行它。
我的问题是代码在其他具有类似规格的计算机(win7、jre6 和 jre7)上不起作用。该代码试图读取 php 页面源本身,而不是页面生成的数据。而且,它的网络浏览器(explorer9、chrome)也像我的一样下载页面本身。
我找不到两台计算机之间的任何区别,并且无法在其他计算机上生成错误。
你能提供任何我可以检查的线索吗?
这是我的代码;
try {
url = new URL(
"http://www.agroclimate.org/howard/GDD/getFAWNDailyData.php?loc=490&frommonth=6&fromday=26&fromyear=2009&tomonth=7&today=7&toyear=2009");
URLConnection urlConn = url.openConnection();
InputStream is = urlConn.getInputStream();
InputStreamReader reader = new InputStreamReader(is);
BufferedReader bf = new BufferedReader(reader);
int lines = 0;
int wind_count = 0, airtemp_count = 0;
// et starts from the 2nd line
String firstLine = bf.readLine(); // firstLine is "DATETIME,ET"
System.out.print("\n" + "-----" + firstLine + "\n");
String year = "", month = "", day = "", WindCount = "", AirTempCount = "";
int monthNum = 0;
String line = bf.readLine();
System.out.print("\n" + "-----" + line + "\n");
StringTokenizer st = new StringTokenizer(line, ",");
if (st.hasMoreTokens()) {
year = st.nextToken();
}
if (st.hasMoreTokens()) {
month = st.nextToken();
String[] values = month.split(" ");
day = values[0].substring(1);
year = values[2].replace('"', ' ');
year = year.trim();
month = values[1].trim();
monthNum = getMonthValue(month);
}
System.out.println("year---:[" + year + "]");
System.out.println("month---:[" + month + "]");
System.out.println("day---:[" + day + "]");
} catch (MalformedURLException me) {
me.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
} finally {
if (is != null)
try {
is.close();
} catch (IOException e) {
;
}
}
谢谢。