본문 바로가기
▶ Back-End/Java

파일 검색 후 파일 읽기

by 오늘도 코딩 2021. 5. 13.
728x90
반응형

원하는 경로의 파일명을 검색하여 값을 추출

*미리 파일이 생성돼 있어야 한다.

 

 

▷ Example

 - 파일의 내용은 json 형태이고, 한 줄만 있다고 가정

 

public void testReadFile(){
	try {
		// 파일 찾을 경로
		File searchPath = new File("C:/testFolder/");
		
		// 파일 찾기
		FilenameFilter filter = new FilenameFilter() {
			public boolean accept(File file, String name) {
				// 찾을 파일명("TestTxt.txt"로 시작하는 파일)
				return name.startsWith("TestTxt.txt");
			}
		};
		
		// 찾은 파일
		File files[] = searchPath.listFiles(filter);
		System.out.println("찾은 파일 갯수" + files.length);
		 
		// 찾은 파일이 있으면
		if(files.length > 0 ) {
			// 찾은 파일 읽기
			// 테스트 파일은 한 줄만 존재
			BufferedReader br = new BufferedReader(new FileReader(files[0]));
			String line = br.readLine();
			br.close();
			System.out.println("읽은 내용(한줄) : " + line);
			
			// 읽은 파일을 JSON Object로 변환
			JSONParser parser = new JSONParser();
			JSONObject jsonObj = (JSONObject) parser.parse(line);
			
			// 키 값으로 값 추출
			String no = (String) jsonObj.get("no");
			String name = (String) jsonObj.get("name");
			String age = (String) jsonObj.get("age");
			
			System.out.println("추출한 값 no: " + no);
			System.out.println("추출한 값 name: " + name);
			System.out.println("추출한 값 age: " + age);
		}
	} catch (Exception e) {
		e.printStackTrace();
	}
}
/*
	결과 : 
		읽은 내용(한줄) : {"no":"01", "name":"홍길동", "age":"19"}
		추출한 값 no: 01
		추출한 값 name: 홍길동
		추출한 값 age: 19
*/

 

 

▷ 관련 글

 

파일 생성하기

파일의 내용을 채워 원하는 경로에 파일 생성 *원하는 경로에 폴더가 존재해야 한다. *폴더 유/무에 따라 폴더를 생성하는 로직은 반영 안함 ▷ Example - 파일의 내용은 json 형태이고, 한 줄만 있다

coding-today.tistory.com

 

 

728x90
728x90

'▶ Back-End > Java' 카테고리의 다른 글

@EventListener Example  (0) 2021.05.18
파일 생성하기  (0) 2021.05.13
날짜 비교  (0) 2021.05.04
JSON 응답 필드 Null 값 제외(@JsonInclude)  (0) 2021.04.30
해당 월 말일 산출  (0) 2021.04.23

댓글