我想下載一個XML文件使用流和事情都很好,直到xml大小變得比9 MB大,所以我有這個錯誤 java.io.IOException:過早的EOFjava.io.IOException:早熟EOF
這是代碼
BufferedInputStream bfi = null;
try {
bfi = new BufferedInputStream(new URL("The URL").openStream());
String name = "name.xml";
FileOutputStream fb = new FileOutputStream(name);
BufferedOutputStream bout = new BufferedOutputStream(fb, 1024);
byte[] data = new byte[1024];
int x = 0;
while ((x = bfi.read(data, 0, 1024)) >= 0) {
bout.write(data, 0, x);
}
this.deletePhishTankDatabase(this.recreateFileName());
ptda.insertDownloadTime(hour, day, month, year);
bout.close();
bfi.close();
} catch (IOException ex) {
Logger.getLogger(PhishTankDataBase.class.getName()).log(Level.SEVERE, null, ex);
} finally {
try {
bfi.close();
} catch (IOException ex) {
Logger.getLogger(PhishTankDataBase.class.getName()).log(Level.SEVERE, null, ex);
}
}
} else {
System.out.println("You can't do anything");
return;
}
哪條線指向異常的原因?你不應該忽略這樣的有用信息! – polygenelubricants 2010-05-02 16:50:05
@polygenelubricants:你在開玩笑吧?讓我們猜測是最好的部分! – 2010-05-02 16:51:57
您是否看過您的數據並查看它是否有任何無效字符?你可能想要簡化你的代碼並去掉任何與流無關的東西。嘗試將您的輸入回顯到輸出文件並查看您獲得的內容。 – 2010-05-02 16:53:41