Languages/Kotlin

    [Kotlin] Unzip a file with subfolder / subdirectory

    문제 압축파일을 해제해야 한다 (.zip 파일) 하위 폴더가 존재하는 압축파일이다. 과정 엔트리의 상위 디렉토리 만들어주는 함수까지 파다가 다시 이럴리가 없다며 정신차리고 자바소스코드 보고서 긁어다 테스트하니까 바로 돌아갔다. 좀 허무... 그대로 쓰기엔 너무 자바스러워서 코틀린 소스로 재작성하였다. 인터넷에 있는 파일압축, 압축해제 예제들은 각기 다른 상태의 압축파일에 대한 예제이기 때문에 (단일 파일을 압축한 zip파일, 파일들만 압축한 zip파일, zip파일을 재압축한 zip파일 등등...) 내가 필요한 예제를 잘 찾아내야 한다. 코틀린같은 경우에는 참고할 예제가 그리 많지 않아서 java 소스를 참고하여 재작성하였다. 결과 fun unZip(zipFilePath: String, targetPath..

    [Kotlin] Content is not allowed in prolog.; HTTP header setting error

    Tableau api를 활용하여 개발 중, json 형태의 데이터를 보내 응답을 받아야 하는데 아래 오류가 뜨는 경우 Servlet.service() for servlet [dispatcherServlet] in context with path [] threw exception [Request processing failed; nested exception is org.springframework.web.client.HttpClientErrorException$BadRequest: 400 Bad Request: [{"error":{"summary":"Bad Request","detail":"Deserialization problem: Content is not allowed in prolog.; ","c..

    [Kotlin] Open API 호출해서 데이터 가져오기

    알파버전 프로젝트에 코틀린을 적용해보자는 이야기가 나와서 코틀린을 들여다 보느라 하루가 다 갔다. 우선 외부 데이터를 끌어다가 출력하는것까지 시도했다. 다른 분이 자바로 예제를 올려두신 걸 보고 코틀린으로 옮겨 적었다. 너무 옮겨적은 것 같으니 프로젝트 진행하면서는 좀 갈고 닦아봐야 할 것 같다. ▼ 우선 gradle에 dependency를 설정했다. dependencies { implementation("org.springframework.boot:spring-boot-starter-thymeleaf") implementation("org.springframework.boot:spring-boot-starter-web") implementation("org.springframework.boot:spri..