Dev Language/Java
ByteArrayOutputStream 는 어떻게 사용되는 것일까?
필자는 기본적으로 File 에 대한 접근을 할때, `OutputStream`을 상속하는 파일 관리자 클래스를 많이 사용하곤 했다. 예를 들면 아래와 같은 `FileOutputStream`이 대표적이다.File file = new File(filePath, "파일명")FileOutputStream fos = new FileOutputStream(file) 기본적으로 `FileOutputStream, DataOutputStream, BufferedOutputStream` ... 을 호출시 File 관련 파라미터가 위 예제와 같이 존재한다. 그래서 늘 위의 `코드`와 같이 파일과 Steram 클래스의 연결을 통해 I/O 를 처리하였는데, 최근 동료의 코드를 리뷰하면서 ByteArrayOutputStream ..
OS 마다 서로 다른 파일 구분자(Java, File, FileSeparator)
파일 구분자 개요 흔히 url 입력하듯이 `/`을 입력하는 것이 파일을 구분하는것의 당연함이라고 생각했지만 검색해보니, OS마다 다른 파일 구분자를 가지고 있었다. 그것을 흔히 사용하는 두개의 OS로 구분하고자 한다. 윈도우 : \ 리눅스 : / 만약 다음과 같은 파일 구조를 가지고 있다고 할때 fileGrandParent ->fileParent ->->fileChildren 각각의 OS는 파일 구분자가 다름으로 인해서, 표시하는 방식이 다르게 된다. 윈도우 : fileGrandParent\fileParent\fileChildren 리눅스 : fileGrandParent/fileParent/fileChildren 그렇지만 요즘의 프로그램들은 `\`(백슬래시), `/`(슬래시) 든 알아서 인식한다고 한다...