"์๋ ํ์ธ์, ์๋ฏธ๊ณ ! ์ค๋ซ๋์ BufferedReader ๋ฐ InputStreamReader ํด๋์ค๋ฅผ ์ฌ์ฉํด ์์ต๋๋ค . ์ด์ ์ด๋ค์ด ์ค์ ๋ก ๋ฌด์์ ํ๋์ง ์ดํด๋ณด๊ฒ ์ต๋๋ค."
InputStreamReader ํด๋์ค๋ InputStream ์ธํฐํ์ด์ค์์ Reader ์ธํฐํ์ด์ค๋ก ์ ํด๋์ ์ด๋ํฐ์ ๋๋ค . ์ฌ๊ธฐ์๋ ์ถ๊ฐํ ๊ฒ์ด ์์ต๋๋ค.
๊ทธ๋ฌ๋ ์์ปจ๋ ์ด๊ฒ์ ์ผ์ด๋๋ ์ผ์ ๋๋ค. InputStreamReader ๊ฐ์ฒด ์์ ๋ค์ ๋ฌธ์๋ฅผ ์์ฒญ(์ฝ๊ธฐ)ํ๋ฉด ์์ฑ์์๊ฒ ์ ๋ฌ๋ InputStream ์์ ๋ช ๋ฐ์ดํธ๋ฅผ ์ฝ๊ณ ํ๋์ ๋ฌธ์๋ก ๋ฐํํฉ๋๋ค.
๊ทธ๋ฌ๋ Reader๋ ์์ ํ๊ธฐ์ ๊ฐ์ฅ ํธ๋ฆฌํ ๊ฐ์ฒด๊ฐ ์๋๋๋ค. ์ข ์ข ์ฐ๋ฆฌ์๊ฒ ํ์ํ ๊ฒ์ ์ฌ์ฉ์๊ฐ ์ ๋ ฅํ ๋ชจ๋ ๋ฌธ์๋ฅผ ํ ๋ฒ์ ์ฝ๋ ๊ฒ์ด ์๋๋ผ ์ด๋ฌํ ๋ฌธ์๋ฅผ ์ค๋ก ๋๋๋ ๊ฒ์ ๋๋ค.
"ํ์ง๋ง Reader ํด๋์ค์๋ ์ฝ๊ธฐ (CharBuffer s) ๋ฉ์๋๊ฐ ์์ต๋๋ค. ์ฐ๋ฆฌ๋ ๊ทธ๊ฒ์ ์ฌ์ฉํ ์ ์์ต๋๊น?"
"์ด ๋ฉ์๋๋ ๋ฒํผ ํฌ๊ธฐ์ ์ฒญํฌ๋ก ๋ฐ์ดํฐ๋ฅผ ์ฝ๊ณ CharBuffer ๊ฐ์ฒด์ ๋ฐฐ์นํฉ๋๋ค."
ํ ์คํธ๋ ์ผ๋ฐ์ ์ผ๋ก ์ค๋ก ๋๋ฉ๋๋ค. ๋ฐ๋ผ์ read(CharBuffer s) ๋ฉ์๋๋ ํ ๋ฒ์ ์ฌ๋ฌ ์ค์ ์ฝ์ ์ ์์ต๋๋ค. ์ค ๋๊น์ง ์ ํํ ํ ์คํธ๋ฅผ ์ฝ์ด์ผ ํ๋ ๊ฒฝ์ฐ(์ฆ ์ค ๋ฐ๊ฟ ๋ฌธ์๊น์ง ํ ์ค์ ๋ชจ๋ ๋ฌธ์) ๋ค๋ฅธ ๊ฒ์ ์ฐพ๋ ๊ฒ์ด ์ข์ต๋๋ค. ๊ทธ๋ฆฌ๊ณ ๋์ฒด ๋ฐฉ๋ฒ์ด ์กด์ฌํฉ๋๋ค. BufferedReader ํด๋์ค ์์ .
Reader ์์ ์๋ ํธ๋ฆฌํ ๊ตฌ์กฐ์ธ BufferedReader ํด๋์ค์๋ readLine()์ด๋ผ๋ ๋งค์ฐ ํธ๋ฆฌํ ๋ฉ์๋ ๊ฐ ์์ต๋๋ค . ์ด ๋ฐฉ๋ฒ์ ์ฌ์ฉํ๋ฉด Reader์์ ์ ์ฒด ํ ์คํธ ์ค์ ํ ๋ฒ์ ์ฝ์ ์ ์์ต๋๋ค. ์ฝ๋์์ readLine์ ํธ์ถํ๋ฉด ๊ฐํ ๋ฌธ์๋ฅผ ๋ง๋ ๋๊น์ง Reader ๊ฐ์ฒด์์ ๋ฌธ์๋ฅผ ์ฝ์ต๋๋ค. ์ค ๋ฐ๊ฟ ๋ฌธ์๋ฅผ ๋ง๋๋ฉด ๋ฉ์๋๋ ์ด๋ฌํ ๋ฌธ์๋ฅผ ๋จ์ผ ๋ฌธ์์ด์ ํจ๊ป ๋ถ์ฌ์ ๋ฐํํฉ๋๋ค.
"์ ๊ธฐ์ ์ผ๋ก ์ฌ์ฉํ๋๋ฐ ์ด๋ป๊ฒ ํ๋์ง ๋ชฐ๋์ด์. ์ด์ ์๊ฒ ์ด์. ๊ณ ๋ง์์, ๊น."
GO TO FULL VERSION