A. java.io.EOFException這是個什麼異常應該怎麼解決
java中NullPointException引起原因有以下幾類:
1。對java對象不熟悉,特別體現在初學者及剛入門身上。如:類的成員還是對象的時候,初學者往往不知道如何初始化成員對象,結果導致對象為初始化就調用。
2。數據是從外部獲取,如資料庫,取出數據後不檢查就直接調用,常發生在用hibernate 等orm 工具取完數據後數據展示部分。
3。java代碼編寫習慣。編寫類方法不對方法參數進行檢查就使用。
4。引入外部包,而沒有引入外部包依賴包
5。粗心。這是最大的原因,特別是對於有一定編程經驗的人來說。
B. java io編程出現錯誤
貼的報錯信息不夠完整啊,不過這是一個常見的空指針錯誤。
根據現在的信息,我猜應該是:第一行 」arg0.getActionCommand()「 值為null;
可以截圖下全部的報錯信息,或debug看下哪個值為null,就能找出問題了。
C. 出現java.io.IOException是怎麼回事
根據報錯信息可知是因為許可權錯誤導致,解決辦法有以下幾種:
1.在androidMainfest.xml中添加:
<uses-permissionandroid:name="android.permission.WRITE_EXTERNAL_STORAG」/>許可權;
2.如果還不行的時候可以試著在AndroidMainfest.xml中添加:
<usespermissionandroid:name="android.permission.MOUNT_UNMOUNT_FILESYSTEMS"/> 許可權;
3.注意AndroidMainfest.xml文件中許可權的書寫位置:應該和<application>標簽節點同一級,而不要寫到<application>標簽中,這樣許可權是不會生效的;
4.還有一種異常是我在查資料的時候發現的,有的手機在以磁碟模式連接電腦的時候,手機會暫時失去對sdcard/外存的讀寫許可權,這時打開手機app就會發生這個許可權異常IOException。
D. class java.io.ioexception:是什麼意思
JAVA IO異常 IO意思是輸入輸出流的意思,關於文件的操作的異常父類就是這個異常
E. java.io.EOFException這是個什麼異常應該怎麼解決
public class EOFExceptionextends IOException當輸入過程中意外到達文件或流的末尾時,拋出此異常。 此異常主要被數據輸入流用來表明到達流的末尾。注意,其他許多輸入操作返回一個特殊值表示到達流的末尾,而不是拋出異常。 這個是Java 的解釋。
從上面的提示可以模糊看到,因為不知道流的末尾,當到達末尾的時候,自然拋出了此異常。既然不知道結尾如何,乾脆設一個緩存,然後讀取一批數據後輸出即可。
private static final int BUFFER_SIZE=1024*1024;
......
Socket socket = new Socket(cfg.getIp(), Integer.parseInt(SysParamsToolkit.getProperty("socketport")));
String charset = SysParamsToolkit.getProperty("socke.rexml.charset"); //Socket發送的字元集編碼
try {
OutputStream dos = socket.getOutputStream();
dos.write(xmlcmd.getBytes(charset));
dos.flush();
DataInputStream dis = new DataInputStream(socket.getInputStream());
char[] data = new char[BUFFER_SIZE];
BufferedReader br = new BufferedReader(new InputStreamReader(socket.getInputStream(), charset));
int len = br.read(data);
String rexml = String.valueOf(data, 0, len); //接收一個字元串數據
} catch (Exception e) {
return false;
} finally {
if (socket.isConnected())
socket.close();
}
上面的代碼解決此問題
F. 在java中為什麼io流容易出現異常
IO流主要進行數據交互,為了保證安全就必須避免一些類似數據不存在,數據格式錯誤,數據就收錯誤等異常,我們進行網路通信都是使用數據流實現的,出現的問題的機會肯定多啦!
G. java.io.EOFException這是個什麼異常應該怎麼解決
1,內部類BlockDataInputStream.的方法peekByte拋出的異常,意思就是到達了文件的末尾,程序卻沒有正常結束讀取文件內容,你可以單步調試一下看看到達文件末尾之後程序為什麼沒有停下來
2,從異常來看,你是不是使用了一個內部類BlockDataInputStream?錯誤就在BlockDataInputStream.peekByte()方法.
java.io.EOFException:當輸入過程中意外到達文件或流的末尾時,拋出此異常。
此異常主要被數據輸入流用來表明到達流的末尾。
H. java.io.EOFException這是個什麼異常應該怎麼解決
EOFException表示輸入過程中意外地到達文件尾或流尾的信號,導致異常。
這個一般是因為阻塞引起的,因為server的input.read讀不到東西就會阻塞,當你關掉client的時候,server就知道沒有東西進來了,所以就報了個異常,其實這個是正常的,只是告訴你,該把socket關閉一下,還有input也關閉一下。
I. javaIO流有那些異常,並注釋是什麼異常
import java.io.ByteArrayInputStream; //導入ByteArrayInputStream的包
import java.io.IOException; //導入IO異常包
import java.io.PushbackInputStream; //導入回退流包
/**
* 回退流操作
* */
public class PushBackInputStreamDemo{ //類名
public static void main(String[] args) throws IOException{ //入口點 拋出IO異常
String str = "hello,rollenholt"; //定義字元串
PushbackInputStream push = null; //聲明回退流對象
ByteArrayInputStream bat = null; //聲明位元組數組流對象
bat = new ByteArrayInputStream(str.getBytes()); //創建位元組數組流對象,將字元串str拆分成位元組
push = new PushbackInputStream(bat); //創建回退流對象,將拆解的位元組數組流傳入
int temp = 0; //臨時變數,存放逐位元組讀取
//從下面開始,最好每條語句都來個注釋,
while((temp = push.read()) != -1){ //push.read()逐位元組讀取存放在temp中,如果讀取完成返回-1
if(temp == ','){ 判斷讀取的是否是逗號
push.unread(temp); //是的話把逗號拋回輸入流緩沖區
temp = push.read(); // 回退到緩沖區前面
System.out.print("(回退" + (char) temp + ") "); //輸出回退的字元
}else{
System.out.print((char) temp); //否則輸出字元
}
}
}
}
J. java I/O流的異常問題
如果是使用TCP協議通信,由TCP協議是面向連接。所以當客戶端關閉後,由於沒有預先告訴服務要銷毀連接,客戶端關閉時(客戶與服務異常斷開)服務端就會出現異常(空流情況)。這些都是在意料之內的。
一般的處理方法
對networkStream 處理應該是放在try {}catch{}里當出現異常就銷毀當前socket連接:
偽代碼為
try{
networkStream.read();
}catch{
socket.close();
}