개발 127

[Python] 파이썬으로 이미지 다운로드 하기

아래와 같은 텍스트 파일이 있다.파이썬으로 아래 이미지들을 다운로드해서 저장할 것이다. 앞에 숫자는 행번호이고 뒤에는 콤마로 구분된 n개의 이미지 path가 있다.1_1.jpg, 2_1.jpg, 2_2.png, 2_3.gif, 3_1.jpg, 3_2.jpg 이런식으로 저장할 것이다. 1,/image/img1.jpg2,/image/img2.jpg,/image/img3.png,/image/img4.gif3,/image/img5.jpg,/image/img6.jpg 1. 이미지 주소를 이미지파일로 다운로드 하는 함수이다. import osimport sysimport urllib def download_photo(img_url, filename): file_path = "%s%s" % ("/Users/marob..

개발/ETC 2014.05.10

Ajax 한글 깨짐 인코딩 방법

맨날 까먹는 이것 ㅋㅋㅋ AJAX 호출할 때 한글 깨져서 DB에 들어가는 현상.. 1. 페이지 맨위에 아래와 같이 추가해주고.. ​ 2. AJAX로 호출하고... $.ajax({ url: '/society/insert_univ.json', data: {"name":name, "address":address}, method: 'post', success:function(data) { alert("성공"); }, error:function() { alert("실패"); } }); 3. 받는 쪽에서 (서버) 글자를 디코딩 해준다. @RequestMapping("insert_univ.json") public @ResponseBody Integer insertUniv( @RequestParam(value = "n..

개발/JSP 2014.04.08

대만 번체, 일본어 엑셀에서 CSV로 안깨지게 저장하는법

대만, 일본 데이터를 DB에 넣기위해 CSV 파일로 읽어들이려는데CSV에 자꾸 글씨가 깨져 들어가서 엄청 삽질을 했다. 깨지지않게 CSV로 저장하는 법은 아래와 같다. 1. 일반 엑셀 파일에 (확장자 : .xlsx) 데이터들을 저장한다.여기선 글자가 깨지지 않음 2. 1번에서 작업한 엑셀파일을 다른이름으로 저장 - 파일형식 : 유니코드 텍스트(*.txt)로 저장 3. 2번에서 저장한 유니코드 텍스트 (.txt) 파일을 메모장으로 연다.아래와 같은식으로 탭으로 구분되어 들어있을 것이다. JP旭川医科大学医学部JP旭川医科大学医学科.......(생략) 아래와 같이, 인코딩을 UTF-8로 변경하여 저장한다. 4. editPlus 프로그램으로 위의 파일을 연다. 다운로드 (http://www.editplus.com..

개발/ETC 2014.03.13

Hash Set - Custom class 중복 제거하기

Java의 콜렉션 중 Set은 중복된 값이 들어가지 않는다.어릴적 배웠었던 수학에서의 집합의 특성과 같다.'여러대상의 모임이며, 순서가 없고 중복된 값이 없다' Set의 구현체 중 HashSet을 이용해보겠다.아래처럼 사용한다. Test.java public void 해시셋테스트() { Set set = new HashSet(); set.add(1); set.add(2); set.add(2); System.out.println(set); } 결과 >> [1, 2] 결과를 보면, 중복된 값을 제거해서 저장해준다. 그러나, Wrapper class(Integer, String, Long...)가 아닌내가 만든 Custom class로 하면, 중복된 데이터가 들어가버린다.아래의 예를 한번 보자. CreateO..

개발/JAVA 2014.02.16

배열에 있는 값을 특정 구분자로 스트링으로 만들기

어떤 스트링 배열에 비어있는 값이 들어있기도 하고,값이 들어있기도 한 상태다. {"cat", "", "", "dog", "horse", "", "lion"} 값이 들어있는 것들을 스트링으로 만들고 싶다. 아래처럼. cat, dog, horse, lion 이럴 때 쉽게 만들어주는 메소드가 있다!바로 StringUtils의 join 메소드. StringUtils 같은 유틸 클래스를 사용하기 위해서는 라이브러리가 필요한데,maven을 쓰고 있다면 메이븐 검색에서(http://mvnrepository.com/search.html) commons lang을 검색해서 최근 라이브러리의 디펜던시를 복사해서 쓴다. commons-langcommons-lang2.6 예제 코드 >>String[] animal = {"ca..

개발/JAVA 2014.02.09

텍스트 파일 읽어오기 - 파이썬(python)

자바와 perl로 해봤던 것을 파이썬으로도 해봤다. 텍스트 파일에 아래와 같은 내용이 들어있다.코드명과 값이 세미콜론으로 구분되어있는 상황.이 파일을 읽어와서 출력해 볼 것이다. code.txt CODE001;firstCODE002;secondCODE003;third 1) 파일 저장하기 파이썬 코드가 들어있는 위치와 같은곳에 저장했다. 2) 파일 읽어서 파싱하고 출력하기 f = file('code.txt');line = f.readline(); while line: result = line.split(";"); line = f.readline(); print result; 출력결과 >>['CODE001', 'first\n']['CODE002', 'second\n']['CODE003', 'third\n']..

개발/ETC 2014.01.11

텍스트 파일 읽어오기 - 펄(perl)

자바로 했었던것을 perl로도 한번 해봤다. 처음써봤음. 텍스트 파일에 아래와 같은 내용이 들어있다.코드명과 값이 세미콜론으로 구분되어있는 상황.이 파일을 읽어와서 출력해 볼 것이다. code.txt CODE001;firstCODE002;secondCODE003;third 1) 텍스트 파일 저장 perl 소스코드가 있는 디렉토리와 같은 위치에 저장했다. 2) 파일 읽어와서 출력하기 open (TEXT, "code.txt");while() { $line = $_; @result = split /;/, $line; foreach(@result) { print $_ . "\n"; }} 출력결과 >>CODE001first CODE002second CODE003third perl에서 $ 기호는 일반 변수를 의미하..

개발/ETC 2014.01.11

텍스트 파일 읽어오기 - (JAVA)

텍스트 파일에 아래와 같은 내용이 들어있다.코드명과 값이 세미콜론으로 구분되어있는 상황. code.txt CODE001;firstCODE002;secondCODE003;third 이 파일을 읽어오고 출력해볼 것이다. 1) 텍스트 파일 저장 파일 저장 위치는 src/main/resources 밑에 저장한다. 나는 src/main/resources/test/code.txt위의 경로에 저장했다. 2) 파일 읽어오기 인풋스트림으로 파일을 읽어와서 세미콜론(;)으로 잘라서 출력한다. public void readFile() throws IOException { InputStream is = getClass().getClassLoader().getResourceAsStream("test/code.txt"); Buf..

개발/JAVA 2014.01.11

일부 IE 브라우저에서 스크립트 동작 안하는 경우

익스플로러 10을 사용하는 컴퓨터 중 일부에서 자바스크립트가 동작하지 않는다고 했다.크롬에서는 잘되고, IE 10 쓰는사람 중에서도 잘 되는 경우도 있었다. 원인은 호환성보기 때문이었다.호환성 보기 말고 Explorer 10을 선택하고 보면 잘 동작한다. 호환성보기를 선택하면 기본적으로 IE 7 환경으로 보게 된다. 호환성 보기를 선택한 사용자들을 위해 페이지의 태그안에 다음 코드를 넣으면 호환성보기를 선택했더라도 선택 안한 것과 같이 동작한다

개발/ETC 2013.12.01

[C++] 소수 구하기 최적의 알고리즘 (2) - 에라토스테네스의 체

소수 구하기 최적의 알고리즘 1편에서 (http://marobiana.tistory.com/89) 주어진 수보다 작은 수의 소수들로 나누는게 성능이 좋다고 했었는데, 그것보다 더 좋은 알고리즘을 찾아냈다.ㅋㅋ 이것보다 더 좋은 방법은 아마도 없을 것이라 자신함 !! 만약 있다면 댓글 달아주시기 바람. 요번에는 c++로 구현해보았음. 1. 알고리즘 에라토스테네스의 체 (Sieve of Eratosthenes)라는 알고리즘이다. 아래 그림을 보면 무엇인지 알 수 있다. 120까지의 모든 소수를 구한다고 해보자. 2부터 120까지 배열에 모두 넣은 후 소수가 아닌 것들을 모두 체크해버리는 것이다. 2를 제외한 모든 2의 배수를 체크한다. 3을 제외한 모든 3의 배수를 체크한다. 4는 아까 체크당했으므로 소수 ..