파일파싱

개요

사용자가 업로드한 파일 및 서버(Server)의 텍스트 파일을 특정 구분자(',', '|', 'TAB')에 의해 파싱 하여 정보를 추출하는 기능이다. 또는 파일의 텍스트 라인을 일정 길이(Size) 별로 파싱 하여 정보를 추출하는 기능이다. 사용자 정보, 제품목록 정보를 CSV파일로 작성하여 서버(Server)에 업로드 후 파싱 하여 일괄적으로 데이터베이스에 입력할 경우 사용 가능하다.

본 기능은 전자정부 표준프레임워크 공통컴포넌트 요소기술 내에 구성되어 있다.

설명

① 텍스트 파일을 구분자에 의해 파싱 하는 기능
② 텍스트 파일을 일정 길이에 의해 파싱 하는 기능
관련소스
유형대상소스명설명비고
Serviceegovframework.com.utl.service.EgovFileTool.java파일관리 요소기술 클래스
JSPWEB_INF/jsp/egovframework/cmm/utl/EgovFilePars.jsp테스트 페이지
메소드
결과값메소드명설명내용
VectorparsFileByChar(String parFile, String parChar, int parField)특정구분자 파일파싱파일을 특정 구분자(',', 'TAB')로 파싱
VectorparsFileBySize(String parFile, int[] parLen, int parLine)일정길이 파일파싱파일을 일정 길이로 파싱
Input
  • 파일: String 타입의 절대경로를 포함한 파일명 (예, /user/com/test/file1.txt)
  • 구분자: String 타입의 파싱 구분자 (예, $)
  • 필드수: Integer 타입의 파싱 필드수 (예, 3)
  • 필드길이: Integer 타입의 파싱할 필드길이 (예, 3:3:3)
  • 라인수: Integer 타입의 읽어낼 라인수 (예, 10)
Output
  • Vector 타입 파싱결과 구조체

환경설정

N/A

사용방법

	import egovframework.com.utl.sim.service.EgovFileTool;   
 
	// 1. 특정구분자 파일파싱
	String parFile = request.getParameter("file");
	String parChar = request.getParameter("char");
	int parField = Integer.parseInt(request.getParameter("field"));
	Vector list = new Vector();
	if (parFile != null && parFile.length() > 0
		&& parChar != null && parChar.length() > 0
		&& parField > 0) {
		list = EgovFileTool.parsFileByChar(parFile, parChar, parField);
	}
 
	// 2. 일정길이 파일파싱
	String parFile = request.getParameter("file");
	String[] parSize = request.getParameter("len").split(":");
	String line = request.getParameter("line");
	int [] parLen = null;
	int parLine = 0;
	Vector list = new Vector();
	if (parFile != null && parFile.length() > 0
		&& parSize != null && parSize.length > 0
		&& line != null && line.length() > 0) {
		parLen = new int [parSize.length];
		for (int i = 0; i < parSize.length; i++) {
			parLen[i] = Integer.parseInt(parSize[i]);
		}
		parLine = Integer.parseInt(line);
		list = EgovFileTool.parsFileBySize(parFile, parLen, parLine);
	}

참고자료

N/A

 
egovframework/파일파싱.txt · 마지막 수정: 2023/12/21 05:21 (외부 편집기)
 
이 위키의 내용은 다음의 라이센스에 따릅니다 :CC Attribution-Noncommercial-Share Alike 3.0 Unported
전자정부 표준프레임워크 라이센스(바로가기)

전자정부 표준프레임워크 활용의 안정성 보장을 위해 위험성을 지속적으로 모니터링하고 있으나, 오픈소스의 특성상 문제가 발생할 수 있습니다.
전자정부 표준프레임워크는 Apache 2.0 라이선스를 따르고 있는 오픈소스 프로그램입니다. Apache 2.0 라이선스에 따라 표준프레임워크를 활용하여 발생된 업무중단, 컴퓨터 고장 또는 오동작으로 인한 손해 등에 대해서 책임이 없습니다.
Recent changes RSS feed CC Attribution-Noncommercial-Share Alike 3.0 Unported Donate Powered by PHP Valid XHTML 1.0 Valid CSS Driven by DokuWiki