Java EUC-KR text File Convert to UTF-8 text File

윈도우에서 euc-kr로 작성한 파일을 맥에서 열어보니 온통 ???천지라서 변환할 일이 있어서 그냥 끄적여봤다. 아래는 소스이다. 버퍼드리더를 euc-kr로 생성하여 한줄 씩 읽으면서 동시에 utf-8로 변환해서  utf-8로 생성해준 버퍼리라이터를 통해서 새로운 text파일에다가 써준다. import java.io.BufferedReader; import java.io.BufferedWriter; import java.io.FileInputStream; import java.io.FileOutputStream; import java.io.IOException; import java.io.InputStreamReader; import java.io.OutputStreamWriter; public class Convert { public static void main(String[] args ) throws IOException { String path = Convert. class .getResource( "" ).getPath(); BufferedReader br = new BufferedReader( new InputStreamReader( new FileInputStream( path + "개인가계부.txt" ), "EUC-KR" )); BufferedWriter bw = new BufferedWriter( new OutputStreamWriter( new FileOutputStream( "utf8.txt" ), "utf-8" )); String line ;         while (( line = br .readLine()) != null ) { //           System.out.println...

대학생 코딩 과제 대행 java, python, oracle 스물 여섯 번째

이미지
https://open.kakao.com/o/s3aMpbA 오라클 모델링하고나서 쿼리짜는 과제이다. 모델링이라고 하기도 웃기지만 ㅎㅎ 과제 요구사항이다. DROP TABLE ACCOUNT PURGE; DROP TABLE BRANCH PURGE; DROP TABLE CUSTOMER PURGE; DROP TABLE LOAN PURGE; DROP TABLE BORROWER PURGE; DROP TABLE DEPOSITOR PURGE; DROP VIEW ALL_CUSTOMER; CREATE TABLE ACCOUNT(     ACCOUNT_NUMBER VARCHAR2(20) PRIMARY KEY,     BRANCH_NAME VARCHAR2(20),     BALANCE NUMBER ); insert into account values('A-101','Downtown',500); insert into account values('A-102','Perryridge',400); insert into account values('A-201','Brighton',900); insert into account values('A-215','Mianus',700); insert into account values('A-217','Brighton',750); insert into account values('A-222','Redwood',700); insert into account values('A-305','Round Hill',350); select * from account; CREATE TABLE BRANCH(     BRANCH_NAME VARCHAR...

대학생 코딩 과제 대행 java, python, oracle 스물 다섯 번째

https://open.kakao.com/o/s3aMpbA 이번에는 지난번에 했던 파이썬으로 소켓통신을 하는 과제를 의뢰받았다. 소켓을 통해서 파일을 서버에 업로드 하는 간단한 과제였다. 먼저 서버 #-*- coding: utf-8 -*- import socket #서버 소켓 오픈 server_socket = socket.socket(socket.AF_INET, socket.SOCK_STREAM) port = 12345 server_socket.bind(("", port)) server_socket.listen(5) print ("TCP Upload Server Waiting for client on port " + str(port)) while True:     client_socket, address = server_socket.accept()     print("I got a connection from ", address)     req = client_socket.recv(1024)     print("Request :  ", req)     decodedReq = req.decode("utf-8")     print("decode : ", decodedReq)     fileTitle = decodedReq.split('!@#$%^&*')[0]     fileContent = decodedReq.split('!@#$%^&*')[1].encode("utf-8")     print('title : ', fileTitle)     print('content : ', fileContent)     uploadFile = open(fileTitle, "wb")     uploa...

대학생 코딩 과제 대행 java, python, oracle 스물 네 번째

이미지
https://open.kakao.com/o/s3aMpbA 요즘 학기 말이긴 한가 보다 ㅇㅅㅇ.. 의뢰가 없다가 최근에 3개가 들어왔었다. 차례대로 포스팅을 오랜만에 해보려고 한다. 먼저 과제는 2문제이다. 1번은 WITH RECURSIVE문과 같은 기능을 하는 stored procedure를 구현하라는 내용의 문제였다. WITH RECURSIVE문은 mysql 8버전 이후부터 사용이 가능하다. 하지만 과제에 사용하는 mysql 버전은 5.5로 해당 구문을 쓸 수 없게 되있었다. 따라서 1번은 계층형 쿼리를 사용해야 됬다. oracle의 경우 계층형 쿼리를 start with, connect by 문을 사용해서 짜본적은 있었지만, mysql로 계층형 쿼리를 짜본적이 없어서 당황하지 않을 수 없었다. 그래서 찾다보니 계층형 쿼리를 사용하지 않고도 left self join을 통해서 계층형 쿼리를 구현할 수 있었다. 뭐 완벽하진 않지만,, 제출 전날 의뢰를 해주어서 시간이 부족해서 꼼수를 부려서 그냥 돌아가게끔만 구현했다 ㅎㅎ 변명이지만 ㅎㅎ 2번은 프로시져를 사용하지 않고 쿼리를 통해서 문제해결을 요하는 문제였다. 과제에 사용 되는 테이블 내용 먼저 프로시져를 생성.. CREATE DEFINER=`s201403658`@`%` PROCEDURE `findBySSN`(essn INT) BEGIN DECLARE cnt INT DEFAULT 0; SELECT COUNT(*) INTO cnt FROM EMPLOYEE WHERE Superssn = essn; IF cnt > 0 THEN SELECT lv1.ssn as lv1, lv2.ssn as lv2, lv3.ssn as lv3 , lv4.ssn as lv4, lv5.ssn as lv5, lv6.ssn as lv6, lv7.ssn as lv7, lv8.ssn as lv8, lv9.ss...

MariaDB Database 및 계정 생성 그리고 접속권한 설정

NAS에 MariaDB10이 있어서 개발하면서 사용할 일이 많다. 디비랑 계정 생성하고 접속권한 세팅할 때마다 찾기 귀찮아서 문법을 남긴다. database 생성 CREATE DATABASE 데이터베이스 이름; 계정생성  '%'부분에 'localhost' 일 경우 로컬에서만 접속을 허용 '%' 는 모든 IP에서 접속을 허용한다. 특정대역대 : '111.222.%' 특정IP : 'xxx.xxx.xxx.xxx' 형태로 적어준다. CREATE USER '계정이름'@'%' IDENTIFIED BY '비밀번호'; 특정 데이터베이스에 속한 모든 오브젝트들에 대한 권한을 특정 계정에 부여한다. GRANT ALL PRIVILEGES ON 데이터베이스이름.* TO '계정이름'@'%'; 리프레쉬 ~ 바로 적용 FLUSH PRIVILEGES; 적용된 결과 보기 SHOW GRANTS FOR '계정이름'@'%'; 계정 정보 확인 하기 use mysql; select host, user, password from user;

ECMAScript6 - Operation

이미지
프로퍼티 이름 조합 문자열 조합 변수 값과 문자열 조합 디스트럭처링과 프로퍼티 이름 조합 Default Value 디폴트 값 적용 순서 Default 파라미터 파라미터 디스트럭처링 for-of Array 와 String NodeList 반복 디스트럭처링 for-of아 for-in의 차이 for-of Object 열거와 거듭 제곱 연산자

ECMAScript6 - DeStructuring

이미지
간단히 말해서, 변수에 분할 할당이다. four가 undefined라는 점 다차원 분할 할당도 가능하다는 점 ,를 사용해서 인덱스를 건너뛰고 할당, spread 연산자를 사용하여 할당 Object에도 분할 할당이 가능하다. Key에도 Value에도 함수의 파라미터로도 사용이 가능하다.