-> char로 쓰라고
-> t o m 한글자씩 3번 보냄
-> 자기가 알아서 3번 돌렸다
어떤 데이터가 어떤 순서로있는지 알아야 읽을 수 있음
-> char 3개, int1개, double 1개
ex03 복사
순서대로 입력받는 메소드
-> 3번(tom)
write characters로 했기때문에 하나씩 분리되서 들어옴
-> 코드값더하기한 값이라 이상함
datainputstream dataoutputstream을 한가지로 특화해서 쓰는것 가능
-> 마지막 school
지금은 정상적으로 처리가됨
byte기반 stream은 원래 한글처리가 안되는데
한글처리가 되는 메소드가 있음
Student 있어야 함
3장에서 2장의 student 부를수 있나? 부를수있음
student는 java.lang.package에 있는게 아니고 같은 package에 있는게 아니라서
2장의 student import처리한다음 함
2장의 student
-> Writeobject하던걸 readobject에서 할 수있는데 뭔가 오류가 남
이유?
1.throws쪽
IO EXCEPTION TRY catch 있었는데 여긴 없음
student 클래스 못찾았어 할까봐 나온 것 - classnotfoundexception
2.반환타입 쪽
동시에 한다면
-> 반환타입이 object이면 student로 저장 불가
-> student를 object로 x
해결) downcasting 부모를 자식으로 내리는 downcasting해야함
= downcasting은 그냥 casting임
-> Object로 저장된 건 그냥 못쓰고 Student로 casting
네트워크상의 특성 : 주고받는거는 문자이외의 데이터가 많은
: 우리가 작업을 해줘야함, 스트림을 바꾸든
(여기서 배운거 그대로 쓰기)
객체 파일
현재시간,날짜 알아내는 자바 API 쓰고
시간데이터만 활용해서 2023 폴더 안 28 폴더 안 03 폴더 안 14폴더 가 있어야 함
년,월,일,시간 분리해서 와야 함
-> 2중 하나 추출해야함
-> month 기반의 day 세는것 (8월 3일)
month를 8이라고 하면 안됨 -> 08이라고 해야함
정수 2자리 표시하는데 부족한 자리 0채우기
-> string + 대신 builder 씀
복습하기 : 13장
-> 실행이 안된게 아니라 못지움
-> 비어있는 디렉토리만 삭제가능
-> 우리가 만든 디렉토리는 비어있지 않음
-> 지우기 가능
서버에 올라가있는 데이터 지우는 일 거의없음
storage에 모든걸 가져와서 비우기
storage가 비워있지 않으니까 안쪽에서 있는거 가져와서 하나씩 지우기
-> 안쪽 파일다지우고
지우기전에 이름 다 보여주면서 지우기
나를 지우고 부모를 전달해서 부모를 지우고
-> 나를 보냄
-> 하지 X(공부용으로만 하기)
F드라이브(USB) 테스트
16시 부모 한단께 위에
-> c드라이브에 부모가없으니까 종료하겠다
전달된 dir 지우고
상위 dir 가지고 상위 dir알아내고 없으면 그만하고 있으면 지우고
-> 부르고 부모전달
더이상호출할 부모가 없을때) 더 올라갈때가 없을때까지
-> 한글 안깨짐
int 하나보낼때 쓰는것
char[], String 여러문자 보낼 때 쓰는것
-> !(느낌표) 잘 안보임
★ 밑에처럼 코딩하기!
애초에 주고받는게 문자전용이라 txt로 확인가능
-> 순서대로 다 보내면 Hello world
-> 실제 파일로 보내는 곳은 여기부터
try catch 끝나면 생성끝나도 메시지 출력될것
(비교하기)
str1 에 0부터 4글자 보내기(일부만 골라서 보내는것가능)
-> 서버측에서 코드를 쳐서 보냄 (사용자들이 받으면 자기들이 친 코드가 됨)
-> 서버가 보낸 코드가 cilent측에서 자동으로 실행됨(한줄에 하나씩 써야함)
-> printwriter같은거 쓰면 하나씩 쓰니까 편함
-> 자바단에서는 쓸일이 많이 없음
-> 표준출력스트림(printout에서 사용하던것)
printline때문에 쓰는것
-> pirntln 메소드 쓰기 위해서 writer쓰는 것
-> 줄바꿀 거니까 공백 채우기
-> filewriter에는 없고 bufferedwriter에는 있고
출력스트림은 덮어쓰기하니까 새로 생김
hell world
-> 보조 스트림없이 해보기
-> println 쓰는게 printwriter의 목적이다
try가 애초에 필요없음
-> 커서가 3번재줄까지 넘어감
-> throws가 없어서 try-catch할 필요 x
close를 finally에 적지 않음
-> try 끝에 close넣어도 문제가 없음(경험이 쌓이면)
-> 한줄적으려고 뒤에 적는것
java가 못하는거라 해당 파일을 분석하는것
<수정>
ex02_OutputStream;
-> 모든 파일 위치 조정
출려스트림 : 덮어쓰기 2개있음
-> 처음에는 새로만들고 그 다음부터는 추가모드
-> 파일이름 : tomcat의 동작로그가 찍힘
-> 서버의 오류 나타나면 : 여기에 적혀있음
-> resources 자원 : stream (스트림)
-> 애를 쓰면 close안할 수 있음
-> 형식만 바꾸면 finally 필요 없음
속도 향상위해서 buffered 띄움
-> 추가냐 true 다
append : 추가
첫번재 파일에 enter없으니까 enter먼저하기
close 공식적으로 안해도 됨
resources가 문법으로 들어가는 건 아님
(생성만 try옆에서 하기)
-> 한번만 실행해야함
-> 추가모드라 2번 실행하면 2번 들어감
ex05_Reader는 내일함
출력이 쉽고 입력이 어려운 편
-> 출력먼저 공부하기!