1. ๋ฐ์ดํฐ ์คํธ๋ฆผ
ํ๋ก๊ทธ๋จ์ด ๊ทธ ์์ฒด๋ก ์ฌ์ผ๋ก ์กด์ฌํ๋ ๊ฒฝ์ฐ๋ ๋๋ญ ๋๋ค. ํ๋ก๊ทธ๋จ์ ์ผ๋ฐ์ ์ผ๋ก ์ด๋ป๊ฒ๋ "์ธ๋ถ ์ธ๊ณ"์ ์ํธ ์์ฉํฉ๋๋ค. ์ด๋ ํค๋ณด๋์์ ๋ฐ์ดํฐ ์ฝ๊ธฐ, ๋ฉ์์ง ๋ณด๋ด๊ธฐ, ์ธํฐ๋ท์์ ํ์ด์ง ๋ค์ด๋ก๋ ๋๋ ๋ฐ๋๋ก ์๊ฒฉ ์๋ฒ์ ํ์ผ ์ ๋ก๋๋ฅผ ํตํด ๋ฐ์ํ ์ ์์ต๋๋ค.
ํ๋ก๊ทธ๋จ๊ณผ ์ธ๋ถ ์ธ๊ณ ๊ฐ์ ๋ฐ์ดํฐ ๊ตํ ์ด๋ผ๋ ํ ๋จ์ด๋ก ์ด๋ฌํ ๋ชจ๋ ๋์์ ์ธ๊ธํ ์ ์์ต๋๋ค . ์ ๊น, ํ ๋จ์ด๊ฐ ์๋๋๋ค.
๋ฌผ๋ก ๋ฐ์ดํฐ ๊ตํ ์์ฒด๋ ๋ฐ์ดํฐ ์์ ๊ณผ ๋ฐ์ดํฐ ์ ์ก์ ๋ ๋ถ๋ถ์ผ๋ก ๋๋ ์ ์์ต๋๋ค. ์๋ฅผ ๋ค์ด, ๊ฐ์ฒด๋ฅผ ์ฌ์ฉํ์ฌ ํค๋ณด๋์์ ๋ฐ์ดํฐ๋ฅผ ์ฝ์ต๋๋ค Scanner
. ์ด๊ฒ์ ๋ฐ์ดํฐ๋ฅผ ๋ฐ๋ ๊ฒ์
๋๋ค. ๊ทธ๋ฆฌ๊ณ ๋ช
๋ น์ ์ฌ์ฉํ์ฌ ํ๋ฉด์ ๋ฐ์ดํฐ๋ฅผ ํ์ํฉ๋๋ค System.out.println()
. ์ด๊ฒ์ด ๋ฐ์ดํฐ ์ ์ก์
๋๋ค.
ํ๋ก๊ทธ๋๋ฐ์์ "์คํธ๋ฆผ"์ด๋ผ๋ ์ฉ์ด๋ ๋ฐ์ดํฐ ๊ตํ์ ์ค๋ช ํ๋ ๋ฐ ์ฌ์ฉ๋ฉ๋๋ค. ๊ทธ ์ฉ์ด๋ ์ด๋์์ ์์ต๋๊น?
์ค์ํ์์๋ ๋ฌผ์ ํ๋ฆ์ด๋ ์์์ ํ๋ฆ์ ๊ฐ์ง ์ ์์ต๋๋ค. ํ๋ก๊ทธ๋๋ฐ์๋ ๋ฐ์ดํฐ ์คํธ๋ฆผ์ด ์์ต๋๋ค .
์คํธ๋ฆผ์ ๋ค๋ชฉ์ ๋๊ตฌ์ ๋๋ค. ์ด๋ฅผ ํตํด ํ๋ก๊ทธ๋จ์ ์ด๋์์๋ ๋ฐ์ดํฐ๋ฅผ ์์ ํ๊ณ (์ ๋ ฅ ์คํธ๋ฆผ) ์ด๋์์๋ ๋ฐ์ดํฐ๋ฅผ ๋ณด๋ผ ์ ์์ต๋๋ค(์ถ๋ ฅ ์คํธ๋ฆผ). ๋ฐ๋ผ์ ๋ ๊ฐ์ง ์ ํ์ด ์์ต๋๋ค.
- ์ ๋ ฅ ์คํธ๋ฆผ์ ๋ฐ์ดํฐ๋ฅผ ์์ ํ๊ธฐ ์ํ ๊ฒ์ ๋๋ค.
- ์ถ๋ ฅ ์คํธ๋ฆผ์ ๋ฐ์ดํฐ๋ฅผ ์ ์กํ๊ธฐ ์ํ ๊ฒ์ ๋๋ค.
์คํธ๋ฆผ์ '์ ํ'์ผ๋ก ๋ง๋ค๊ธฐ ์ํด Java ์์ฑ์๋ InputStream
๋ฐ ์ด๋ผ๋ ๋ ๊ฐ์ง ํด๋์ค๋ฅผ ์์ฑํ์ต๋๋ค OutputStream
.
ํด๋์ค ์๋ ๋ฐ์ดํฐ๋ฅผ ์ฝ์ ์ ์๋ ๋ฉ์๋๊ฐ InputStream
์์ต๋๋ค . read()
๊ทธ๋ฆฌ๊ณ ํด๋์ค ์๋ ๋ฐ์ดํฐ๋ฅผ ์ธ ์ ์๋ ๋ฉ์๋๊ฐ OutputStream
์์ต๋๋ค . write()
๋ค๋ฅธ ๋ฐฉ๋ฒ๋ ์์ง๋ง ๋์ค์ ์์ธํ ์ค๋ช
ํฉ๋๋ค.
๋ฐ์ดํธ ์คํธ๋ฆผ
์ฐ๋ฆฌ๋ ์ด๋ค ์ข ๋ฅ์ ๋ฐ์ดํฐ์ ๋ํด ์ด์ผ๊ธฐํ๊ณ ์์ต๋๊น? ์ด๋ค ํ์์ ์ทจํฉ๋๊น? ์ฆ, ์ด๋ฌํ ํด๋์ค๋ ์ด๋ค ๋ฐ์ดํฐ ์ ํ์ ์ง์ํฉ๋๊น?
์ด๋ค์ ์ผ๋ฐ ํด๋์ค์ด๋ฏ๋ก ๊ฐ์ฅ ์ผ๋ฐ์ ์ธ ๋ฐ์ดํฐ ์ ํ์ธ byte
. An์ OutputStream
๋ฐ์ดํธ(๋ฐ ๋ฐ์ดํธ ๋ฐฐ์ด)๋ฅผ ์ธ ์ ์๊ณ InputStream
๊ฐ์ฒด๋ ๋ฐ์ดํธ(๋๋ ๋ฐ์ดํธ ๋ฐฐ์ด)๋ฅผ ์ฝ์ ์ ์์ต๋๋ค. ๊ทธ๊ฒ ์ ๋ถ์
๋๋ค. ๋ค๋ฅธ ๋ฐ์ดํฐ ์ ํ์ ์ง์ํ์ง ์์ต๋๋ค.
๋ฐ๋ผ์ ์ด๋ฌํ ์คํธ๋ฆผ์ ๋ฐ์ดํธ ์คํธ๋ฆผ ์ด๋ผ๊ณ ๋ ํฉ๋๋ค .
์คํธ๋ฆผ์ ํ ๊ฐ์ง ๊ธฐ๋ฅ์ ํด๋น ๋ฐ์ดํฐ๋ฅผ ์์ฐจ์ ์ผ๋ก๋ง ์ฝ์(๋๋ ์ธ ์) ์ ์๋ค๋ ๊ฒ์ ๋๋ค. ์์ ์ค๋ ๋ชจ๋ ๋ฐ์ดํฐ๋ฅผ ์ฝ์ง ์๊ณ ๋ ์คํธ๋ฆผ ์ค๊ฐ์์ ๋ฐ์ดํฐ๋ฅผ ์ฝ์ ์ ์์ต๋๋ค.
์ด๊ฒ์ด ํด๋์ค ์ ์ฒด์์ ํค๋ณด๋์์ ๋ฐ์ดํฐ๋ฅผ ์ฝ๋ ๋ฐฉ์์
๋๋ค Scanner
. ํค๋ณด๋์์ ํ ์ค์ฉ ์์ฐจ์ ์ผ๋ก ๋ฐ์ดํฐ๋ฅผ ์ฝ์ต๋๋ค. ํ ์ค, ๋ค์ ์ค, ๋ค์ ์ค ๋ฑ์ ์ฝ์ต๋๋ค. ์ ์ ํ๊ฒ๋ ํ์ ์ฝ๋ ๋ฐฉ๋ฒ์ ์ด๋ผ๊ณ ํฉ๋๋ค nextLine()
.
์ ๋ฐ์ดํฐ ์ฐ๊ธฐ OutputStream
๋ ์์ฐจ์ ์ผ๋ก ๋ฐ์ํฉ๋๋ค. ์ด์ ๋ํ ์ข์ ์๋ ์ฝ์ ์ถ๋ ฅ์
๋๋ค. ์ค์ ์ถ๋ ฅํ๊ณ ๋ค๋ฅธ ์ค๊ณผ ๋ค๋ฅธ ์ค์ ์ถ๋ ฅํฉ๋๋ค. ์์ฐจ ์ถ๋ ฅ์
๋๋ค. ์ฒซ ๋ฒ์งธ ์ค, ์ด ๋ฒ์งธ ์ค, ๋ ๋ฒ์งธ ์ค์ ์ถ๋ ฅํ ์ ์์ต๋๋ค. ๋ชจ๋ ๋ฐ์ดํฐ๋ ์ถ๋ ฅ ์คํธ๋ฆผ์ ์์ฐจ์ ์ผ๋ก๋ง ๊ธฐ๋ก๋ฉ๋๋ค.
๋ฌธ์ ์คํธ๋ฆผ
์ต๊ทผ์ ๋ฌธ์์ด์ด ๋ ๋ฒ์งธ๋ก ๋ง์ด ์ฌ์ฉ๋๋ ๋ฐ์ดํฐ ์ ํ์ด๋ผ๋ ์ฌ์ค์ ์๊ฒ ๋์์ผ๋ฉฐ ์ค์ ๋ก ๊ทธ๋ ์ต๋๋ค. ๋ง์ ์ ๋ณด๊ฐ ๋ฌธ์์ ์ ์ฒด ๋ฌธ์์ด์ ํํ๋ก ์ ๋ฌ๋ฉ๋๋ค. ์ปดํจํฐ๋ ๋ชจ๋ ๊ฒ์ ๋ฐ์ดํธ๋ก ๋ณด๋ด๊ณ ๋ฐ๋ ๋ฐ ํ์ํ์ง๋ง ์ธ๊ฐ์ ์๋ฒฝํ์ง ์์ต๋๋ค.
์ด ์ฌ์ค์ ๊ณ ๋ คํ์ฌ Java ํ๋ก๊ทธ๋๋จธ๋ ๋ ๊ฐ์ ํด๋์ค๋ฅผ ๋ ์์ฑ Reader
ํ์ต๋๋ค Writer
. ํด๋์ค Reader
๋ ํด๋์ค์ ์ ์ฌ InputStream
ํ์ง๋ง read()
๋ฉ์๋๋ ๋ฐ์ดํธ๊ฐ ์๋๋ผ ๋ฌธ์( char
)๋ฅผ ์ฝ์ต๋๋ค. ํด๋์ค ๋ ํด๋์ค Writer
์ ํด๋นํฉ๋๋ค OutputStream
. ๊ทธ๋ฆฌ๊ณ ํด๋์ค์ ๋ง์ฐฌ๊ฐ์ง๋ก ๋ฐ์ดํธ๊ฐ ์๋ Reader
๋ฌธ์( )๋ก ์๋ํฉ๋๋ค .char
์ด ๋ค ๊ฐ์ง ํด๋์ค๋ฅผ ๋น๊ตํ๋ฉด ๋ค์ ๊ทธ๋ฆผ์ ์ป์ ์ ์์ต๋๋ค.
๋ฐ์ดํธ(๋ฐ์ดํธ) | ๋ฌธ์(char) | |
---|---|---|
๋ฐ์ดํฐ ์ฝ๊ธฐ |
|
|
๋ฐ์ดํฐ ์ฐ๊ธฐ |
|
|
์ค์ฉ์ ์ธ ์์ฉ ํ๋ก๊ทธ๋จ
, ๋ฐ ํด๋์ค ์์ฒด๋ ๋ฐ์ดํฐ InputStream
๋ฅผ ์ฝ์ ์ ์๋(๋๋ ๋ฐ์ดํฐ ๋ฅผ ์ธ ์ ์๋) ๊ตฌ์ฒด์ ์ธ ๊ฐ์ฒด์ ์ฐ๊ฒฐ๋์ด ์์ง ์๊ธฐ ๋๋ฌธ์ ๋๊ตฌ๋ ์ง์ ์ฌ์ฉํ์ง ์์ต๋๋ค. ํ์ง๋ง ์ด ๋ค ๊ฐ์ง ํด๋์ค์๋ ๋ง์ ์์
์ ์ํํ ์ ์๋ ๋ง์ ์์ ํด๋์ค๊ฐ ์์ต๋๋ค.OutputStream
Reader
Writer
2. InputStream
ํด๋์ค
์ด InputStream
ํด๋์ค๋ ์๋ฐฑ ๊ฐ์ ํ์ ํด๋์ค์ ๋ํ ์์ ํด๋์ค์ด๊ธฐ ๋๋ฌธ์ ํฅ๋ฏธ๋กญ์ต๋๋ค. ์์ฒด ๋ฐ์ดํฐ๋ ์์ง๋ง ๋ชจ๋ ํ์ ํด๋์ค๊ฐ ์์ํ๋ ๋ฉ์๋๊ฐ ์์ต๋๋ค.
์ผ๋ฐ์ ์ผ๋ก ์คํธ๋ฆผ ๊ฐ์ฒด๊ฐ ๋ด๋ถ์ ์ผ๋ก ๋ฐ์ดํฐ๋ฅผ ์ ์ฅํ๋ ๊ฒฝ์ฐ๋ ๋๋ญ ๋๋ค. ์คํธ๋ฆผ์ ๋ฐ์ดํฐ๋ฅผ ์ฝ๊ณ ์ฐ๊ธฐ ์ํ ๋๊ตฌ์ด์ง๋ง ์คํ ๋ฆฌ์ง๋ ์๋๋๋ค. ์ฆ, ์์ธ๊ฐ ์์ต๋๋ค.
InputStream
ํด๋์ค ๋ฐ ๋ชจ๋ ํ์ ํด๋์ค ์ ๋ฉ์๋ :
ํ๋ ์์ | ์ค๋ช |
---|---|
|
์คํธ๋ฆผ์์ 1๋ฐ์ดํธ๋ฅผ ์ฝ์ต๋๋ค. |
|
์คํธ๋ฆผ์์ ๋ฐ์ดํธ ๋ฐฐ์ด์ ์ฝ์ต๋๋ค. |
|
์คํธ๋ฆผ์์ ๋ชจ๋ ๋ฐ์ดํธ๋ฅผ ์ฝ์ต๋๋ค. |
|
์คํธ๋ฆผ์์ ๋ฐ์ดํธ๋ฅผ ๊ฑด๋๋๋๋ค n (์ฝ๊ณ ๋ฒ๋ฆฝ๋๋ค). |
|
์คํธ๋ฆผ์ ๋จ์ ์๋ ๋ฐ์ดํธ ์๋ฅผ ํ์ธํฉ๋๋ค. |
|
์คํธ๋ฆผ์ ๋ซ์ต๋๋ค |
๋ค์ ๋ฐฉ๋ฒ์ ๊ฐ๋จํ ์ดํด๋ณด๊ฒ ์ต๋๋ค.
read()
๋ฐฉ๋ฒ
์ด ๋ฉ์๋๋ ์คํธ๋ฆผ์์ 1๋ฐ์ดํธ๋ฅผread()
์ฝ๊ณ ๋ฐํํฉ๋๋ค. ๋ฐํ ์ ํ์ด ํผ๋๋ ์ ์์ต๋๋ค . ์ด ์ ํ์ ํ์ค ์ ์ ์ ํ์ด๊ธฐ ๋๋ฌธ์ ์ ํ๋์์ต๋๋ค . ์ ์ฒ์ 3๋ฐ์ดํธ๋ 0์
๋๋ค.int
int
int
read(byte[] buffer)
๋ฐฉ๋ฒ
์ด๊ฒ์ ๋ฐฉ๋ฒ์ ๋ ๋ฒ์งธ ๋ณํ์
๋๋ค read()
. InputStream
ํ ๋ฒ์ ๋ชจ๋ ์์ ๋ฐ์ดํธ ๋ฐฐ์ด์ ์ฝ์ ์ ์์ต๋๋ค . ๋ฐ์ดํธ๋ฅผ ์ ์ฅํ ๋ฐฐ์ด์ ์ธ์๋ก ์ ๋ฌํด์ผ ํฉ๋๋ค. ์ด ๋ฉ์๋๋ ์ค์ ๋ก ์ฝ์ ๋ฐ์ดํธ ์์ธ ์ซ์๋ฅผ ๋ฐํํฉ๋๋ค.
10ํฌ๋ก๋ฐ์ดํธ ๋ฒํผ๊ฐ ์๊ณ ํด๋์ค๋ฅผ ์ฌ์ฉํ์ฌ ํ์ผ์์ ๋ฐ์ดํฐ๋ฅผ ์ฝ๋๋ค๊ณ ๊ฐ์ ํด ๋ณด๊ฒ ์ต๋๋ค FileInputStream
. ํ์ผ์ 2ํฌ๋ก๋ฐ์ดํธ๋ง ํฌํจ๋ ๊ฒฝ์ฐ ๋ชจ๋ ๋ฐ์ดํฐ๊ฐ ๋ฒํผ ๋ฐฐ์ด๋ก ๋ก๋๋๊ณ ๋ฉ์๋๋ ์ซ์ 2048(2ํฌ๋ก๋ฐ์ดํธ)์ ๋ฐํํฉ๋๋ค.
readAllBytes()
๋ฐฉ๋ฒ
์์ฃผ ์ข์ ๋ฐฉ๋ฒ์
๋๋ค. ๊ทธ๊ฒ์ ๋ค ๋จ์ด์ง ๋๊น์ง ๋ชจ๋ ๋ฐ์ดํฐ๋ฅผ ์ฝ๊ณ InputStream
๋จ์ผ ๋ฐ์ดํธ ๋ฐฐ์ด๋ก ๋ฐํํฉ๋๋ค. ์ด๊ฒ์ ์์ ํ์ผ์ ์ฝ์ ๋ ๋งค์ฐ ํธ๋ฆฌํฉ๋๋ค. ํฐ ํ์ผ์ ๋ฌผ๋ฆฌ์ ์ผ๋ก ๋ฉ๋ชจ๋ฆฌ์ ๋ง์ง ์์ ์ ์์ผ๋ฉฐ ๋ฉ์๋๋ ์์ธ๋ฅผ throwํฉ๋๋ค.
skip(long n)
๋ฐฉ๋ฒ
์ด ๋ฐฉ๋ฒ์ ์ฌ์ฉํ๋ฉด ๊ฐ์ฒด์์ ์ฒ์ n๋ฐ์ดํธ๋ฅผ ๊ฑด๋๋ธ ์ ์์ต๋๋ค InputStream
. ๋ฐ์ดํฐ๋ฅผ ์๊ฒฉํ๊ฒ ์์ฐจ์ ์ผ๋ก ์ฝ๊ธฐ ๋๋ฌธ์ ์ด ๋ฉ์๋๋ ์คํธ๋ฆผ์์ ์ฒ์ n๋ฐ์ดํธ๋ฅผ ์ฝ๊ณ ๋ฒ๋ฆฝ๋๋ค.
์ค์ ๋ก ๊ฑด๋๋ด ๋ฐ์ดํธ ์๋ฅผ ๋ฐํํฉ๋๋ค(๋ฐ์ดํธ๋ฅผ ๊ฑด๋๋ฐ๊ธฐ ์ ์ ์คํธ๋ฆผ์ด ์ข
๋ฃ๋ ๊ฒฝ์ฐ n
).
int available()
๋ฐฉ๋ฒ
์ด ๋ฉ์๋๋ ์คํธ๋ฆผ์ ์์ง ๋จ์ ์๋ ๋ฐ์ดํธ ์๋ฅผ ๋ฐํํฉ๋๋ค.
void close()
๋ฐฉ๋ฒ
๋ฉ์๋ close()
๋ ๋ฐ์ดํฐ ์คํธ๋ฆผ์ ๋ซ๊ณ ์ฐ๊ฒฐ๋ ์ธ๋ถ ๋ฆฌ์์ค๋ฅผ ํด์ ํฉ๋๋ค. ์คํธ๋ฆผ์ด ๋ซํ๋ฉด ๋ ์ด์ ๋ฐ์ดํฐ๋ฅผ ์ฝ์ ์ ์์ต๋๋ค.
๋งค์ฐ ํฐ ํ์ผ์ ๋ณต์ฌํ๋ ์์ ํ๋ก๊ทธ๋จ์ ์์ฑํด ๋ด
์๋ค. readAllBytes()
์ ์ฒด ํ์ผ์ ๋ฉ๋ชจ๋ฆฌ๋ก ์ฝ๋ ๋ฐฉ๋ฒ์ ์ฌ์ฉํ ์ ์์ต๋๋ค . ์:
์ํธ | ๋ฉ๋ชจ |
---|---|
|
InputStream ํ์ผ์์ ์ฝ๊ธฐ OutputStream ์ํด ํ์ผ์ ์ฐ๊ธฐ ์ํด ๋ฐ์ดํฐ๋ฅผ ์ฝ์ ๋ฒํผ ์คํธ๋ฆผ์ ๋ฐ์ดํฐ๊ฐ ์๋ ํ ๋ฒํผ๋ก ๋ฐ์ดํฐ ์ฝ๊ธฐ ๋ฒํผ ์์ ๋ ๋ฒ์งธ ์คํธ๋ฆผ์ผ๋ก ๋ฐ์ดํฐ ์ฐ๊ธฐ |
์ด ์์ ์์๋ ๋ ๊ฐ์ ํด๋์ค๋ฅผ ์ฌ์ฉํ์ต๋๋ค. ๋ ํ์ผ์์ ๋ฐ์ดํฐ๋ฅผ ์ฝ๋ ๋ฐ ์ฌ์ฉ FileInputStream
๋๋ ์์ ์ด๊ณ , ๋ ํ์ผ์ ๋ฐ์ดํฐ๋ฅผ ์ฐ๋ ๋ฐ ์ฌ์ฉ๋๋ ์์์
๋๋ค . ์กฐ๊ธ ํ์ ๋ ๋ฒ์งธ ์์
์ ๋ํด ์ด์ผ๊ธฐํ๊ฒ ์ต๋๋ค.InputStream
FileOutputStream
OutputStream
์ฌ๊ธฐ์ ๋ ๋ค๋ฅธ ํฅ๋ฏธ๋ก์ด ์ ์ real
๋ณ์์
๋๋ค. ํ์ผ์์ ๋ง์ง๋ง ๋ฐ์ดํฐ ๋ธ๋ก์ ์ฝ์ ๋ ๋ฐ์ดํฐ๊ฐ 64KB ๋ฏธ๋ง์ผ ์ ์์ต๋๋ค. ๋ฐ๋ผ์ ์ ์ฒด ๋ฒํผ๊ฐ ์๋๋ผ ๊ทธ ์ผ๋ถ์ธ ์ฒซ ๋ฒ์งธ real
๋ฐ์ดํธ๋ง ์ถ๋ ฅํด์ผ ํฉ๋๋ค. ์ด๊ฒ์ด ๋ฐ๋ก write()
๋ฐฉ๋ฒ์์ ์ผ์ด๋๋ ์ผ์
๋๋ค.
3. Reader
ํด๋์ค
ํด๋์ค ๋ ํด๋์ค Reader
์ ์์ ํ ์๋ ๋ก๊ทธ์
๋๋ค InputStream
. ์ ์ผํ ์ฐจ์ด์ ์ char
๋ฐ์ดํธ๊ฐ ์๋ ๋ฌธ์( )๋ก ์๋ํ๋ค๋ ๊ฒ์
๋๋ค. InputStream
ํด๋์ค ์ ๋ง์ฐฌ๊ฐ์ง๋ก Reader
ํด๋์ค๋ ๊ทธ ์์ฒด๋ก ์ด๋์๋ ์ฌ์ฉ๋์ง ์์ต๋๋ค. ์๋ฐฑ ๊ฐ์ ํ์ ํด๋์ค์ ๋ํ ์์ ํด๋์ค์ด๋ฉฐ ์ด๋ค ๋ชจ๋์ ๋ํ ๊ณตํต ๋ฉ์๋๋ฅผ ์ ์ํฉ๋๋ค.
ํด๋์ค ์ ๋ฉ์๋ Reader
(๋ฐ ๋ชจ๋ ํ์ ํด๋์ค):
ํ๋ ์์ | ์ค๋ช |
---|---|
|
char ์คํธ๋ฆผ์์ ํ๋๋ฅผ ์ฝ์ต๋๋ค. |
|
char ์คํธ๋ฆผ์์ ๋ฐฐ์ด์ ์ฝ์ต๋๋ค. |
|
์คํธ๋ฆผ์ ๊ฑด๋๋๋๋ค n chars (์ฝ๊ณ ๋ฒ๋ฆฝ๋๋ค). |
|
์คํธ๋ฆผ์ ์์ง ๋จ์์๋ ๊ฒ์ด ์๋์ง ํ์ธํฉ๋๋ค. |
|
์คํธ๋ฆผ์ ๋ซ์ต๋๋ค |
๋ฐฉ๋ฒ์ InputStream
์ฝ๊ฐ์ ์ฐจ์ด๊ฐ ์์ง๋ง ํด๋์ค์ ๋ฐฉ๋ฒ๊ณผ ๋งค์ฐ ์ ์ฌํฉ๋๋ค.
int read()
๋ฐฉ๋ฒ
์ด ๋ฉ์๋๋ char
์คํธ๋ฆผ์์ ํ๋๋ฅผ ์ฝ๊ณ ๋ฐํํฉ๋๋ค. ์ ํ char
์ ๋ก ํ์ฅ๋์ง๋ง int
๊ฒฐ๊ณผ์ ์ฒ์ ๋ ๋ฐ์ดํธ๋ ํญ์ 0์
๋๋ค.
int read(char[] buffer)
๋ฐฉ๋ฒ
์ด๊ฒ์ ๋ฐฉ๋ฒ์ ๋ ๋ฒ์งธ ๋ณํ์
๋๋ค read()
. Reader
ํ ๋ฒ์ ๋ชจ๋ ์์ char ๋ฐฐ์ด์ ์ฝ์ ์ ์์ต๋๋ค . ๋ฌธ์๋ฅผ ์ ์ฅํ ๋ฐฐ์ด์ ์ธ์๋ก ์ ๋ฌํด์ผ ํฉ๋๋ค. ์ด ๋ฉ์๋๋ ์ค์ ๋ก ์ฝ์ ๋ฌธ์ ์์ธ ์ซ์๋ฅผ ๋ฐํํฉ๋๋ค.
skip(long n)
๋ฐฉ๋ฒ
์ด ๋ฐฉ๋ฒ์ ์ฌ์ฉํ๋ฉด ๊ฐ์ฒด์์ ์ฒ์ n์๋ฅผ ๊ฑด๋๋ธ ์ ์์ต๋๋ค Reader
. ํด๋์ค ์ ์ ์ฌํ ๋ฉ์๋์ ์ ํํ ๋์ผํ๊ฒ ์๋ํฉ๋๋ค InputStream
. ์ค์ ๋ก ๊ฑด๋๋ด ๋ฌธ์ ์๋ฅผ ๋ฐํํฉ๋๋ค.
boolean ready()
๋ฐฉ๋ฒ
true
์คํธ๋ฆผ์ ์ฝ์ง ์์ ๋ฐ์ดํธ๊ฐ ์์ผ๋ฉด ๋ฐํํฉ๋๋ค .
void close()
๋ฐฉ๋ฒ
๋ฉ์๋ close()
๋ ๋ฐ์ดํฐ ์คํธ๋ฆผ์ ๋ซ๊ณ ์ฐ๊ฒฐ๋ ์ธ๋ถ ๋ฆฌ์์ค๋ฅผ ํด์ ํฉ๋๋ค. ์คํธ๋ฆผ์ด ๋ซํ๋ฉด ๋ ์ด์ ๋ฐ์ดํฐ๋ฅผ ์ฝ์ ์ ์์ต๋๋ค.
๋น๊ต๋ฅผ ์ํด ํ ์คํธ ํ์ผ์ ๋ณต์ฌํ๋ ํ๋ก๊ทธ๋จ์ ์์ฑํด ๋ณด๊ฒ ์ต๋๋ค.
์ํธ | ๋ฉ๋ชจ |
---|---|
|
Reader ํ์ผ์์ ์ฝ๊ธฐ Writer ์ํด ํ์ผ์ ์ฐ๊ธฐ ์ํด ๋ฐ์ดํฐ๋ฅผ ์ฝ์ ๋ฒํผ ์คํธ๋ฆผ์ ๋ฐ์ดํฐ๊ฐ ์๋ ํ ๋ฒํผ๋ก ๋ฐ์ดํฐ ์ฝ๊ธฐ ๋ฒํผ์์ ๋ ๋ฒ์งธ ์คํธ๋ฆผ์ผ๋ก ๋ฐ์ดํฐ ์ฐ๊ธฐ |
GO TO FULL VERSION