화면 스크린샷을 생성할 수 있는 Java 코드를 소개해 드립니다. AWT 를 통해 현재 화면을 스크릿샷 할 수 있는 방법이라고 합니다. package com.negafix.screenshot; import java.awt.Dimension; import java.awt.Rectangle; import java.awt.Robot; import java.awt.Toolkit; import java.awt.image.BufferedImage; import java.io.File; import java.io.IOException; import javax.imageio.ImageIO; public class ScreenShotApp { public static void main(String[] args) { tr..
java.io 패키지의 File 객체를 통해 특정 디렉토리 하위의 파일 리스트를 얻어올 수 있는데, 어떠한 경우에 있어서는 특별한 파일명이나 혹은 확장자명을 가진 파일 리스트만 추출해야 하는 경우가 있습니다. 이때 유용하게 사용 가능한 객체가 FilenameFilter 인데, FilenameFilter 는 interface 이기에 사용자가 implements 하여 구현해야 합니다. 특정 디렉토리에서 확장자가 txt 인 파일의 리스트만 출력하는 간단한 예제를 살펴보겠습니다. 우선 FilenameFilter 를 구현하는 클래스를 작성합니다. TXTFileFilter.java package com.negafix.files; import java.io.File; import java.io.FilenameFilt..
Java Application 을 통해 UTF-8 인코딩의 텍스트 파일을 생성하기 위한 코드입니다. public static void main(String[] args) { try { String srcText = new String("UTF-8 파일을 생성합니다."); File targetFile = new File("D:\\output.txt"); targetFile.createNewFile(); BufferedWriter output = new BufferedWriter(new OutputStreamWriter(new FileOutputStream(targetFile.getPath()), "UTF8")); output.write(srcText); output.close(); } catch(Unsup..
새로운 어플리케이션을 개발하면서 IO Package 를 사용하던 기존의 FileUtil 을 버리고 새로 만들기로 했습니다. 그 중 일부가 NIO Package를 사용한 파일 복사 메소드인데요. 원리를 알고 나면 크게 어려울 것은 없으며, 다만 ByteBuffer의 쓰임새에 대해서 100% 이해를 하고 있어야만 정확한 사용이 가능합니다. 실제 구현한 FileUtil 클래스에서 copy() 메소드를 발췌해봤습니다. public void copy(Vector logList) throws IOException { //***** 파일 복사용으로 사용될 IO,NIO Package 객체 ***** FileChannel inChannel = null; FileChannel outChannel = null; //****..
이미 앞서 포스팅한 XMLConfiguration 의 기본적인 사용 예를 보고 연습을 해봤다면 만났을 법한 상황이 있습니다. 일반적인 방법으로는 'Option1,Option2,Option3' 과 같은 Comma 가 들어간 문자열의 경우 getString() 메소드를 통해 정상적으로 값을 가져오지 못하는 현상이 그것인데요. NegaFIX 928rino@naver.com korea Driving,Photo,Mobile,Game,Baseball Programmer 위와 같은 XML 포맷의 Configuration 이 있다고 가정하겠습니다. XMLConfiguration을 통해 해당 설정의 값들을 가져오려고 할 때 일반적인 방법으로는 정상적으로 값을 가져오지 못합니다. 다음 샘플 코드를 보시죠. import o..
Apache Commons Project 에 존재하는 Configuration Package 를 알게 되어 사용해본 결과 상당히 유용한 라이브러리임은 분명하나 상황에 따라 원치않는 결과를 초래하기도 했습니다. 우선 configuration package를 사용하기 위해서는 collections, lang, logging Package를 함께 설치해야 합니다. 2009년 12월 현재 가장 최신버전을 다운 받았습니다. - Commons Project Site : http://commons.apache.org/ 귀찮은 경우 이걸 다운받아 사용해도 무방합니다. 4개 모두 다운받아 사용해야 하며, configuration 패키지는 commons-configuration-1.6.jar 에 포함되어 있습니다. [사용..