ABOUT ME

개발자입니다 :)

Today
Yesterday
Total
  • byte 기반 입출력, 네트워크 socket, client, server (1/13)
    Java 2022. 1. 13. 22:56

    1/ Byte 기반 입출력

    Byte 기반으로 입출력하는 건 예를 들어 이미지 복사할때. 문자로 보낼 수 없기 때문에 byte stream으로 복사한다.

    어제는 FileReader, FileWriter로 문자 기반 입출력.

    byte 기반 입출력은 문자 입출력과 달리, sinker stream만을 통해서 복사한다. 수정이 필요없을때.

    File srcFile = new File("./data/singleton.PNG");
    File destFile = new File("./data/singletonCopy.PNG");
    		
    FileInputStream fis= new FileInputStream(srcFile);
    FileOutputStream fos = new FileOutputStream(destFile);
    		
    int data = 0;
    while((data=fis.read())!=-1) {
    	fos.write(data);
    }
    fos.close();
    fis.close();

     

    2/ 문자 기반, Byte 기반 입출력 비교

     

    3/ 네트워킹

    두 대의 컴퓨터(A,B)가 데이터를 주고 받는 일.

    Socket: 데이터가 나오는 지점과 들어가는 지점. sinker stream이 연결되는 곳.

    server는 무수히 많은 client과 연결되기 때문에 해당 client만의 socket을 만들어줘. 그러면 그 socket이랑 client socket이랑 연결되어서 데이터를 주고받는다.

    자세히 설명하면, client socket이 server socket에게 접속하면 server socket이 client만의 socket을 만들어준다.

    그러면 client socket은 그 socket 사이에 stream을 만들어서 데이터를 직접 주고 받음.

    그런 server쪽의 socket이 여러개 있음.

     

    'Java' 카테고리의 다른 글

    [Error] The application Eclipse can't be opened.  (0) 2022.03.02
    Thread  (0) 2022.02.20
    입출력, stream, file 문자 기반 입출력 (1/12)  (0) 2022.01.12
    HashMap, Thread (1/11)  (0) 2022.01.11
    Collection, Framework (1/10)  (0) 2022.01.11
Designed by Tistory.