JAVA

JAVA - 영어단어장 만들기(파일입출력, HashMap)

로픽 2016. 10. 14. 22:06
300x250

자바 영어단어장 (파일입출력, HashMap)

 

지난번에 올린 HashMap을 이용한 전화번호부에 추가로 파일입출력을 포함하여

데이터를 파일에 저장하고, 불러오는 간단한 영어단어장을 만들어 보았습니다.

 

아직 미숙한 부분이 많아 필요하지 않은 요소들이 코딩에 들어있을 수 있습니다.

고칠 부분은 알려주시면 수정하겠습니다.


dictionaryApp.java 코딩 파일

dictionaryApp.java
다운로드
자바

자바코드에서 필요한 변수를 미리 선언합니다.

가장 중요한 부분은 File 클래스입니다.

 

대부분의 컴퓨터는 test폴더을 가지고 있지 않기 때문에 if문을 통해서

test폴더가 있는지 없는지 확인 후 없으면 폴더를 생성합니다.

 

그 후 switch문을 통해서 각각의 함수로 이동합니다.


자바

 

등록(insert)에서는 파일을 생성하고 작성할 FileWriter클래스와 BufferedWriter클래스가 있습니다.
dictionary.txt 파일에 새로 덮어쓰기가 아닌 이어 쓰기를 원하신다면 true를 넣어주면 값을 이어서 쓸 수 있습니다.
write를 통해서 파일에 입력합니다.변수 word의 값을 입력할 때 " "를 넣은 이유는 파일에 쓰는 단어를 구분하기 위해서입니다


allsearch()메소드에서 reader클래스의 readLine메소드를 이용하여 한 문장(영단어 - 의미)을 모두 읽어
split메소드를 통해서 공백으로 구분하여 각각 값을 HashMap에 넣습니다.

 


JAVA

그리고 마지막 메소드 search()입니다.
검색하고자 하는 영단어를 입력한 이후 HashMap의 메소드 get을 통해서 값을 가져오면 됩니다.
없으면 등록되지 않았다고 표시**
main함수에는 dictionaryApp 클래스를 객체화시켜줍니다.
그리고 close()를 꼭 해주셔야합니다. (안하면 파일에 등록이 안되거나 이상하게 표시됩니다.)



***** kjk_영단어 설명 입력시 띄어쓰기 허용 (18/5/17) *****

dictionaryApp_mod.java
다운로드

- 일단 간단하게 수정하게 띄어쓰기만 허용하게 만들었습니다. 문제 있으면 다시 댓글 남겨주세요~

반응형

'JAVA' 카테고리의 다른 글

자바스프링 - ModelAndView 객체  (0) 2017.03.03
Spring) model  (0) 2017.03.03
자바 기본 클래스, 컬렉션, 제네릭문제  (0) 2016.10.03
JAVA - 전화번호부 예제  (0) 2016.09.27
JAVA - 자바 로또 프로그램(ramdom 중복제거)  (0) 2016.09.21