- 회사에서 '우편모아 시스템' 도로명 주소 검색시 INSERT 를 위해 GOOGLE 검색해서 만든 코드.

  1줄씩 읽어와서 처리. 특정 경로의 1개의 파일만 읽을시에는 File file = new File("경로/텍스트파일명")

  특정 폴더의 모든 텍스트 파일을 읽어 오려면 아래의 예제 처럼 사용하면 된다.

  사용하는 코드를 그대로 옮겨 놓은 것이므로 조금은 예제의 목적에 맞지 않지만 이해하자.

 

 

#### JAVA_텍스트파일읽기_예제 ####

 

 

import java.io.BufferedReader;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileWriter;
import java.io.InputStreamReader;

import com.srpost.salmon.lang.StringUtil;

public class ConversionMain {
   
    /* 새주소 텍스트 파일 postmoa insert 변환 */
    /* 텍스트 파일 구분자 */
    private final static String DELIM = "|";
    /* 변환할 도로명주소 텍스트파일 저장경로 */
    private final static String READ_TXT_PATH = "D:/DEV/PROJECTS/postmoa_juso_conversion/file/read/";
    /* 변환후 도로명주소 텍스트파일 저장경로 */
    private final static String CREATE_TXT_PATH = "D:/DEV/PROJECTS/postmoa_juso_conversion/file/create/";

    public static void main(String[] args) throws Exception {

        try {
            File file = new File(READ_TXT_PATH);
            File[] files = file.listFiles();

            /* READ_TXT_PATH 경로의 파일 수 체크 */
            int _fileLen = files.length;
            System.out.println(" [FileLength] :" + _fileLen);

            // FileReader fr = null;
            BufferedReader br = null;

            String read = null;

            for (int i = 0; i < files.length; i++) {
                String fileName = files[i].getName();
                String filePath = files[i].getPath();
                System.out.println(" [FileName] : " + fileName);
                System.out.println(" [FilePath] : " + filePath);

                // fr = new FileReader(filePath);
                File _encodingFile = new File(filePath);

                /* 인코딩 해서 BufferedReader */
                br = new BufferedReader(new BufferedReader(
                        new InputStreamReader(
                                new FileInputStream(_encodingFile), "UTF-8")));

                /* 변환 후 텍스트 파일 생성 */
                FileWriter out = new FileWriter(CREATE_TXT_PATH + "변환_" + fileName);

                while ((read = br.readLine()) != null) {

                   /* 회사 Salmon 프레임워크 코드 문자열 구분자("|") 잘라서 String[] 에 넣기 */
                    String[] _linez = StringUtil.fastSplit(read, DELIM);

                    String _lineStr = "";

                    _lineStr = _linez[19] + "|" + _linez[1] + "|" + _linez[2]
                            + "|" + _linez[3] + "|" + _linez[4] + "|"
                            + _linez[5] + "|" + _linez[6] + "|" + _linez[7]
                            + "|" + _linez[9] + "|" + _linez[11] + "|"
                            + _linez[12] + "|" + _linez[13] + "|" + _linez[14];
                    out.write(_lineStr + "\n");
                }
                out.close();
            }
            // if(fr!=null)fr.close();
            if (br != null)
                br.close();

            System.out.println(" [FileCreate_End !!!] ");
        } catch (Exception e) {
            System.out.println("Error :" + e.getMessage());
        }

    }// end - main
}// end - class

 

'공부 > JAVA' 카테고리의 다른 글

JAVA_[객체_직렬화]  (0) 2012.06.23
JAVA_[Adapter_패턴 (일명 : Wrapper 패턴)]  (0) 2012.06.23
JAVA_[Eclipse_SerialVersionUID]  (0) 2012.06.23
JAVA_[코딩_지침]  (0) 2012.06.21
JAVA_[StringTokenizer 과 Split 의 차이]  (0) 2012.06.21

+ Recent posts