본문 바로가기

Programming/Java

(22)
[java] String과 getBytes 메소드 오픈소스를 보다가 다음과 같은 메소드를 사용한 걸 발견했다. byte[] res = text.getBytes("utf-8"); 위 메소드를 보고 가장 처음 든 궁금증은 '왜 String을 바이트코드로 변경할까?' 였다. 궁금증을 해결하기 위해 우선 String의 getBytes 메소드가 어떤 메소드인지 찾아보았다. String name = "김정환"; byte[] encodedName = name.getBytes("utf-8"); 간단히 설명하자면, 유니코드 문자열(String)을 바이트코드로 인코딩 해주는 메소드이다. 만약 getBytes()의 인자로 캐릭터셋을 넘기지 않으면 사용자 플랫폼의 기본 charset으로 인코딩 된다. Encodes this String into a sequence of by..
[Java] 이클립스 UTF-8 BOM 제거하기 해당 파일>Properties>Resource>Text file encoding 1. Text file encoding을 'MS949'로 변경한다. 2. 코드 첫부분에 이상한 글자들이 붙는다. 3. 제거 후 Text file encoding을 'UTF8'로 변경한다.
리눅스 정규식 리눅스에서는 grep, sed, awk등 여러 명령어에서 검색 및 필터링을 목적으로 정규식을 많이 사용한다. 예제 설명^The "The" 로 시작되는 문자열 Good$"Good"으로 끝나는 문자열notice "notice"를 포함하고 있는 문자열 abcd*"abc"다음에 "d"가 0개 이상일 때 abcd+"abc" 다음에 "d"가 1개 이상 ab?"a" 다음에 "b"가 있거나 없거나 ab{2} "a" 다음에 "b"가 2개가 있는 문자열 ab{2, }"a" 다음에 "b"가 2개 이상인 문자열 ab{3, 5}"a" 다음에 "b"가 3~5개 사이인 문자열 a...e"."은 임의의 한 글자를 나타낸다.a~e사이에 3가지 글자가 들어가는 문자열ex ) apple 묵음 처리 예제 설명 a(bc)*"a" 다음에 "b..
JAVA File 삭제 (폴더 안의 파일 모두 삭제) public void deleteFile (String filepath){ File path = new File( filepath ); File[] fileList = path.listFiles(); for(int i=0; i
JSONArray key값 추출해서 사용하기 JSONArray array = new JSONArray(component); System.out.println("array: "+ array); JSONObject jobj = array.getJSONObject(0); Set keyList = jobj.keySet(); String table = ""; for(int i=0; i
Java Collection Framework - Set (자바 콜렉션프레임워크 - 집합) 16.2 집합(Set)집합은 요소의 순서를 상관하지 않고 저장한느 컬렉션을 말하며 이를 위해 Set 인터페이스를 구현하고 있다. 집합(Set)의 특징1. 요소는 중복될 수 없다.2. 순서가 있을 수도 있다.3. 정렬될 수도 있다. 집합Set 구현 클래스Set인터페이스를 구현하는 클래스에는 HashSet, LinkedHashSet, TreeSet가 있다. HashSet LinkedHashSet TreeSet 빠른 접근속도중복 허용하지 않음순서 제공하지 않음 중복 허용하지 않음삽입 순서에 의해 반복 중복 허용하지 않음정렬된 순서에 의해 반복 여기서 말하는 중복 허용하지 않음은 이미 존재하는 요소를 다시 추가하더라도 이 요소가 두개 존재하지 않는다는 것을 의미함 집합 인터페이스 메소드booleanadd(Obj..
Java 디자인패턴 Builder Pattern (빌더패턴) bulider pattern은 창조적 디자인 패턴이며 이것은 factory pattern 또는 abstract factory pattern과 매우 비슷하다. 이 패턴에 들어가기 전에 factory pattern과 abstract factory pattern들의 문제점(수 많은 attributes을 사용해야 패턴을 사용할 수 있는 점)에 대해 먼저 알아보자.factory pattern과 abstract factory pattern에는 3가지 중대한 문제점이 있다.수 많은 파라메터들이 클라이언트 클래스로 부터 전달 되는데 이것은 에러를 발생시키는 경우가 많다. 왜냐하면 거의 대부분의 경우 argument(인자)들의 type이 같고 클라이언트 쪽에서는 인자들을 정확히 유지시키기 어렵기 때문이다.몇몇의 파라메터..
자바 foreach String[] temp = {"aa", "bb", "cc"} forfor(int i=0; i