File
ํ์ผ ํด๋์ค์ ์ธ์คํด์ค ์์ฑ
File [ํ์ผ๋ช
] = new File(โ๊ฒฝ๋กโ);
ํ์ผ์์ฑ
[ํ์ผ๋ช
].createNewFile();
์ํ๋ ๊ฒฝ๋ก(ํด๋) ๋ฅผ ์์ฑ
โข
์ ๋๊ฒฝ๋ก : root(window๊ธฐ์ค C:\\)์์ ๋ถํฐ ๊ฒฝ๋ก๋ฅผ ์ง์ ํ๋ ๋ฐฉ์
โข
์๋๊ฒฝ๋ก : ํ์ฌ ์์น๋ก๋ถํฐ ๊ฒฝ๋ก๋ฅผ ์ง์ ํ๋ ๋ฐฉ์, / ๋ก ๊ฒฝ๋ก ๊ตฌ๋ถ
โฆ
ํ์ฌ ์์น : ./, /
โฆ
์์ ํด๋ : ../
ํ์ผ๋ช
์ถ๋ ฅ
System.out.println([ํ์ผ๋ช
].getName());
์ ์ฅ๊ฒฝ๋ก ์ถ๋ ฅ
System.out.println([ํ์ผ๋ช
].getPath());
ํ์ผ์ฉ๋ ํ์ธ
System.out.println([ํ์ผ๋ช
].length());
ํ์ผ ์ญ์
System.out.println([ํ์ผ๋ช
].delete());
IO(Input, Output)
์
์ถ๋ ฅ
์ธ๋ถ์์(OS, DB์๋ฒ, API์๋ฒ ๋ฑ๋ฑ...)์ผ๋ก ๋ถํฐ ์๋ฐ์ ํ๋ก๊ทธ๋จ(๋ฉ๋ชจ๋ฆฌ)์ผ๋ก ๋ฐ์ดํฐ๋ฅผ ์ฝ์ด์ค๊ฑฐ๋, ๋๋ ์ธ๋ถ์์์ผ๋ก ๋ฐ์ดํฐ๋ฅผ ๋ณด๋ด๋ ๊ฒ.
Stream
โข
๋ฐ์ดํฐ๊ฐ ์ค๊ฐ๋ ๋จ๋ฐฉํฅ ํต๋ก์ด๋ค. ์
๋ ฅ์ ์ํ InputStream, ์ถ๋ ฅ์ ์ํ OutputStream ์ด ์กด์ฌ
โข
Stream ์ ์ฌ์ฉ์ด ๋๋๋ฉด ๋ฐ๋์ Stream ์ ๋ซ์์ค์ผํ๋ค.
โข
๋ง์ฝ ์ฌ์ฉ์ด ๋๋ Stream ์ ๋ซ์ง ์์ผ๋ฉด, JVM ์ด ์์์ ๋ซ์์ค๋ค. ๊ทธ๋ผ์๋ ๋ฐ๋์ ์๋์ผ๋ก ๋ซ์์ฃผ๋ ๊ฒ์ ์์น์ผ๋ก ํ๋ค.
โข
Stream ์ ๊ตฌ๋ถ
โฆ
ByteStream : ๋ฐ์ดํฐ๊ฐ 1๋ฐ์ดํธ ๋จ์๋ก ์
์ถ๋ ฅ๋จ
โฆ
๋ฌธ์์คํธ๋ฆผ : ๋ฐ์ดํฐ๋ฅผ 2๋ฐ์ดํธ(char ํฌ๊ธฐ) ๋จ์๋ก ์
์ถ๋ ฅ๋จ
โช
๊ธฐ๋ฐ์คํธ๋ฆผ : ์ค์ ๋ก ์ธ๋ถ์๊ณผ ๋ฐ์ดํฐ๋ฅผ ์
์ถ๋ ฅํ๋ ์คํธ๋ฆผ
FileInputStream, FileOutputStream
โช
๋ณด์กฐ์คํธ๋ฆผ : ๊ธฐ๋ฐ์คํธ๋ฆผ์ ๊ธฐ๋ฅ์ ์ถ๊ฐํด์ฃผ๋ ๋ฐ์ฝ๋ ์ดํฐ
โข
BufferedInputStream, BufferedOutputStream : ์๋ ํฅ์์ ์ํด ๋ฒํผ๋ฅผ ์ฌ์ฉํ๋ค.
โข
ObjectInputStream, ObjectOutputStream : ๊ฐ์ฒด๋ฅผ ์ง๋ ฌํํ๊ธฐ ์ํด ์ฌ์ฉํ๋ค.
โข
InputStreamReader, OutputStreamWriter : ๋ฐ์ดํธ ๊ธฐ๋ฐ์ ์คํธ๋ฆผ์ ๋ฌธ์๊ธฐ๋ฐ์ ์คํธ๋ฆผ์ผ๋ก ๋ณํํ๋ค.
try-with-resource
: ์๋์ผ๋ก ๋ซ์ ์ ์๋ ๊ฐ์ฒด์ ํํด์, ์๋์ผ๋ก close ์ฒ๋ฆฌ๋ฅผ ํด์ฃผ๋ ๊ตฌ๋ฌธ์ด๋ค.
System.in, System.out
System.in : ํ์ค์
๋ ฅ์ฅ์น(ํค๋ณด๋)๋ก ๋ถํฐ ๋ฐ์ดํฐ๋ฅผ ์
๋ ฅ๋ฐ๋ ์คํธ๋ฆผ
System.out : ํ์ค์ถ๋ ฅ์ฅ์น(๋ชจ๋ํฐ)๋ก ๋ถํฐ ๋ฐ์ดํฐ๋ฅผ ์ถ๋ ฅํ๋ ์คํธ๋ฆผ