- 회사에서 '우편모아 시스템' 도로명 주소 검색시 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 |