728x90
TryNotepad 열기 기능
![]() |
코드칠게 많아져서 따로 메소드를 만든다, |
![]() ![]() |
open창이 뜬다. api를 보면 쓸수있는 메소드가 있다. |
![]() |
열기에서 파일을 하나만 선택할수 있다. |
![]() |
JOptionPane.showMessageDialog를 통해 과정을 출력해서 확인해 볼 수 있다. |
![]() |
파일을 읽어오는 FileReader를 통해 읽어온다. (FileReader은 한글파일 안깨짐) 그리고buffer로 읽는다. |
![]() |
위에 그림을 참고해서 파일을 읽어오자. 근데 file이 지역변수라서 read에서 못쓴다. 클래스의 필드로 올려버리자 |
![]() |
오버라이드한 actionPerformed에는 throws가 안먹히기 때문에 try catch를 사용해야 한다. throw를 할지 try catch를 할지는 이렇게 상황을 봐야한다. 상속하고 그런데는 throws를 하면 전부다 해줘야 한다. |
![]() |
이게 차곡차곡 나오는게 아니라 한줄씩 덮어서 마지막 줄만 출력된다. |
![]() |
realLine은 엔터전까지 읽는다. 그리고 setText는 한줄 출력하고 그위에 덮어서 출력해서 전문이 나오지않고 append(line)은 한줄씩 옆으로 계속 나온다. 근데 한줄로만 쭉 나오면 우리가 원하는 모습이 아니기 때문에 강제로 엔터를 넣어야 한다, 그래서 ()에 line+"\n|을 넣어서 엔터를 해준다. |
![]() |
반대로 할때의 경로는 이렇다 |
![]() |
열기부분 |
![]() |
열기부분 |
객체 직렬화
데이터를 쪼개서 byte단위로 보내고 다시 붙여서 데이터를 내보낸다.
=Serializable()
Stream이 붙었다면 byte타입으로 보낸다는 말이다.
입력을 누르면 actionPer~ 로 데이터가 가야한다.
728x90