從我的串行端口讀取數據我正在使用inputStream並使用BufferedReader作爲inputStream。每次讀取後,我想清除BufferedReader。在類BufferedReader下沒有明確的方法。我試圖使用reset(),但它的工作。任何怪人都可以在這個問題上提出任何建議嗎?如何清除java中的BufferedReader
3
A
回答
6
只是爲了可讀性 - 這是你在註釋發佈的代碼(使用str的附加定義)
DataInputStream inStream = null;
String str = null;
BufferedReader bufRd = new BufferedReader(new InputStreamReader(inStream));
while((str = bufRd.readLine()) != null){
System.out.println(str);
}
是的,它應該工作。無需「清除」或「重置」Stream或Streamreader。從讀者那裏讀取的所有內容都是「從中獲取的」,下次閱讀時您將不會再看到它。因此,如果您真的看到項目重新出現在閱讀器上(並且您還沒有「定製」閱讀器本身),那麼很可能您的數據源一次又一次地發送相同的數據。檢查該區域。
+0
非常感謝。我爲我工作。 – 2009-12-14 02:20:15
+0
readLine()已被棄用。 – 2014-09-24 10:04:36
2
儘量使緩衝
的新實例BufferedReader br = new BufferedReader(newInputStreamReader(socket.getInputStream())); //create
String read = br.readLine(); //read line
br = new BufferedReader(newInputStreamReader(socket.getInputStream()));
我使用socket通信所以這裏是插座的例子。 我希望我幫你
相關問題
- 1. 如何清除BufferedReader如果它不是空的[Java/Android]
- 2. 如何清除java中的輸入流
- 3. 如何清除java中的ClassCastException?
- 4. 如何清除Java中的控制檯
- 5. 瞭解BufferedReader如何在Java中工作
- 6. 如何在Java中清除控制檯?
- 7. Java中的BufferedReader問題
- 8. Java + readline與BufferedReader
- 9. 如何從Java的BufferedReader中讀取C腳本中的行?
- 10. 如何使用Java清除Safari Cookie?
- 11. 如何清除Java 9 JShell控制檯?
- 12. 如何清除Java控制檯?
- 13. 如何清除
- 14. 用的BufferedReader(Java)的預讀
- 15. java bufferedreader,聲明readline
- 16. Java BufferedReader readline阻塞?
- 17. 如何清除recyclerView清單?
- 18. Java清除地圖
- 19. 如何使用java清除excel表格中的列的內容
- 20. Java:什麼是BufferedReader的readLine()中的IOEXceptions?
- 21. 使用Java的BufferedReader從URL
- 22. 如何清除/清除VxWorks中的消息隊列緩衝區?
- 23. 如何使用bufferedreader/writer複製java中的圖像
- 24. 如何在Java中的PrintWriter之前使用BufferedReader
- 25. 如何清除數組列表中的多餘空格Java
- 26. 如何清除Java中的servlet上下文
- 27. 如何用java清除Selenium中的下拉菜單
- 28. 在java中跳過BufferedReader的readLine()方法
- 29. Java,BufferedReader在while循環中的問題
- 30. BufferedReader並枚舉Java中的多行
你是什麼意思清除BufferReader?寫完之後,可以刷新緩衝區 - 但我不知道在讀完之後是否需要清除緩衝區。 – 2009-12-02 03:43:03
你的意思是說你想使被緩衝的對象爲null? – GustyWind 2009-12-02 03:59:54
DataInputStream inStream; BufferedReader bufRd = new BufferedReader(new InputStreamReader(inStream)); ((str = bufRd.readLine())!= null){System.out.println(str); } 在上面的代碼中,每次都執行readLine()我也得到以前讀取的內容。像第一次看到「abc」,然後第二次看到「abcdef」。但我只需要「def」。 – 2009-12-02 04:11:05