positivesmile
50
2017-11-02 12:23:43
5
1609

JAVA에서 TXT 파일로 내용 저장하고 불러와서 배열에 저장하기


1. 설계하는 프로그램은 1번에서 count++ 를 하여 계정을 하나씩 생성하고,

계정이 생성되면 case 2 에서 목록확인을 할떄 나와있습니다.

이 목록을 case 8 에 1번으로 저장을 누르면 txt 파일에 저장하는것이고 다시 컴파일했을때 목록에 아무내용도 없을떄

case 8 에 2번으로 불러오기 하면 txt 파일을 불러와서 다시 acc 배열에 저장하는 구조입니다만.

case8 에 1 (저장) 은 잘 되는데 불러오기가 되질 않고 바로 clear 되서 다시 메뉴로 나오네요..

수정해야할 방법좀 알려주시면 감사하겠습니다.


case 8:

{

fx.clear();

System.out.print("1. 저장 / 2. 불러오기");

switch (sc.nextInt())

{

case 1:

clear();

acc[count].type = 1;

try

{

BufferedWriter br = new BufferedWriter(new FileWriter("Banking List.txt")); 

for(j= 0 ; j<count; j++)

{

for(i=0; i<count; i++)

{

System.out.println();

String txt = "오늘 날짜 : " + day + " / " + "계좌유형 : " + acc[j].type + " / " + "이름 : " +  acc[j].name + " / " + "계좌번호 : " + acc[j].number + " / " + "현재잔액 : " + acc[j].money;

br.write(txt);

br.write("\r\n"); // 줄바꿈 처리

j++;

}

}

br.flush();

br.close();


if (null!= br)

System.out.println(" Banking List.txt 파일이 성공적으로 생성되었습니다.");

pause();

br.close();

}

catch (Exception e)

{

System.out.println("예외 발생");

}

case 2:

clear();

acc[count].type = 2;

try

{

File file = new File("F:\\Program Files\\eclipse\\H.W\\Banking List.txt");

FileReader fr = null;

BufferedReader br = null;

String read;

fr = new FileReader(file);

br = new BufferedReader(br);

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

{

acc[index].index = read;

System.out.println(read);

}

if(fr!=null)

fr.close();

if(br!=null)

br.close();

}

catch(Exception e)

{

System.out.println("Error : " + e.getMessage());

}



0
0
  • 답변 5

  • 로스트오더
    366
    2017-11-02 15:18:01

    br = new BufferedReader(br);

    이거인거같네요.

    0
  • positivesmile
    50
    2017-11-03 17:28:03

    저 부분이 잘못됬다는 건가요?

    0
  • 로스트오더
    366
    2017-11-05 08:52:58

    ㅇ? 지금 버퍼리더안에 fr이아니라 br 넣어두셧는데..

    0
  • positivesmile
    50
    2017-11-05 14:17:59 작성 2017-11-05 14:18:48 수정됨

    잘못보신거 같은데요 fr이 아니라 br로 넣어서 진행한건데 안된거라서요.


    첫번째 댓글에는 br = new BufferedReader(br) 이라고 하셨는데

    br = new BufferedReader(fr) 로 해야된다는건가요?


    0
  • 로스트오더
    366
    2017-11-05 14:34:26


    	File file = new File("F:\\Program Files\\eclipse\\H.W\\Banking List.txt");
    
    							
    
    					FileReader fr = null;
    
    					BufferedReader br = null;
    
    					
    
    					String read;
    
    					
    
    					fr = new FileReader(file);
    
    					br = new BufferedReader(br);


    본인이 짠코드면 조금만생각을 해봐도 알거같은데여.. 이걸 굳이말해야 아나요.

    br = new BufferedReader(br);

    이게 무슨 의도하신거면 모르겠는데 의도하시지 않은부분같고 보고 생각해보면  깨달아야하는거 아닌가요..

    혹시 BurfferReader 클래스가 님이 새로만드신 클래스고 의도하신부분이라면 사과드릴께요

    0
  • 로그인을 하시면 답변을 등록할 수 있습니다.