การทำงานของ BufferReader / BufferInputStream และ BufferWriter / BufferOutputStream? [ทำซ้ำ]

ฉันต้องการทราบการทำงานที่แน่นอนของ BufferReader / BufferInputStream และ BufferWriter / BufferOutputStream เช่นจะทำให้กระบวนการอ่านหรือการเขียนเร็วขึ้นได้อย่างไร ในบางไซต์พวกเขาบอกว่ามันแนบบัฟเฟอร์เพื่อเร่งกระบวนการ .. การแนบบัฟเฟอร์หมายความว่าอย่างไร มันจะเร่งกระบวนการอย่างไร? ในบางไซต์พวกเขาบอกว่าแทนที่จะอ่าน 1 ไบต์จะอ่านมากกว่าหนึ่งไบต์ในแต่ละครั้ง เมื่อพวกเขาพูดว่าการอ่านหมายความว่าอย่างไร มันถ่ายโอนข้อมูลจาก harddisk ไปยัง RAM หรือไม่?

คำถามนี้หลอกหลอนฉันมาสามวันแล้ว โปรดให้คำตอบที่เหมาะสมแก่ฉันด้วย


person Shiva prasad    schedule 23.03.2017    source แหล่งที่มา
comment
นี่อาจทำให้คำถามบางข้อของคุณชัดเจนขึ้น docs.oracle.com/javase/tutorial /essential/io/buffers.html   -  person 7663233    schedule 23.03.2017
comment
ผู้อ่านและผู้เขียนบัฟเฟอร์เป็นสิ่งที่ไซต์อื่น ๆ พูด: พวกเขาบัฟเฟอร์คำขออ่านและเขียนเป็นชิ้น ๆ พวกเขาไม่ได้เร่งความเร็วสิ่งใดๆ เลย เนื่องจากการอ่าน/เขียนทีละไบต์อาจยังเร็วกว่านั้น ขึ้นอยู่กับว่าคุณกำลังอ่านจากที่ใด ไม่ได้ระบุว่าจะเป็นฮาร์ดดิสก์หรือ RAM เนื่องจากคุณสามารถรับตัวอ่านและสตรีมได้เกือบทุกอย่างใน Java ไซต์อื่นๆ เหล่านั้นพูดถึงความเร็ว เนื่องจาก โดยทั่วไป อ่านไบต์บางคำได้เร็วกว่า เนื่องจากการตั้งค่าคำขออ่าน โดยปกติ จะใช้เวลาทำงานมากกว่าการอ่านไบต์จริง   -  person M. Prokhorov    schedule 23.03.2017