(클래스 이름에 File이라고 붙어있어야 직접적으로 파일에 읽고 쓰는게 가능)
FileReader, FileWriter
FileInputStream, FileOutputStream
이 네개는 직접적으로 파일을 읽고 쓰는 클래스다.
그리고 문자나 바이트 형식의 문자만 읽거나 쓸 수 있다.
만약에 숫자 데이터를 읽어야 한다면 항상 숫자 데이터를 변환을 해줘야 한다.
이렇게 데이터를 변환까지 해줘서 파일을 읽고 쓰는 클래스가 DataInputStream, DataOutputStream
즉, 프리미티브 타입의 데이터를 읽고 쓸수 있다.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 | import java.io.DataInputStream; import java.io.DataOutputStream; import java.io.FileInputStream; import java.io.FileNotFoundException; import java.io.FileOutputStream; import java.io.IOException; public class Example { public static void main(String[] args) { /* DataInputStream, DataOutputStream*/ try { FileOutputStream fos = new FileOutputStream("testdir//java"); DataOutputStream dos = new DataOutputStream(fos); dos.writeInt(77); FileInputStream fis = new FileInputStream("testdir//java"); DataInputStream dis = new DataInputStream(fis); System.out.println(dis.readInt()); // 77 fos.close(); dos.close(); fis.close(); dis.close(); } catch (FileNotFoundException e) { e.printStackTrace(); } catch (IOException e) { e.printStackTrace(); } } } | cs |
'DEV > JAVA' 카테고리의 다른 글
id_4 : BufferedInputStream, BufferedOutputStream, BufferedReader, BufferedWriter (0) | 2019.10.08 |
---|---|
io_3 : ObjectInputStream, ObjectOutputStream , 직렬화 (serialization ) (0) | 2019.10.08 |
io_1 : File, FileReader, FileWriter, FileInputStream, FileOutputStream (0) | 2019.10.07 |
java LinkedList 와 Iterator (0) | 2019.10.04 |
java 현재시간 출력 ( Calendar, SimpleDateFormat ) (0) | 2019.10.04 |