[Java] 자바 #41, File입출력(3) - 회원정보 입출력하기 예제 (절대경로, 상대경로)

회원정보 입출력하기


회원정보.

- 이름, 나이, 주소, 전화

- 파일 입출력


A. 데이터 파일 포맷.

ex) 이름,나이,주소,전화


주소표현 방식


절대경로

File temp = new File("C:\\Class\\File\\test.txt");


상대경로

test.txt -> .\test.txt

. : 현재 실행파일이나 작업공간이 있는 폴더.


>> 저는 되도록 처음에는 절대주소를 이용하여 작성하는 것을 권장합니다. 파일이 있는 절대적인 주소이기 때문에 틀릴일이 거의 없고, 초보자들이 파일과 디렉토리 구조를 알기에 가장 적합한 주소 같습니다.


회원정보 입력하기


1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
    File temp = new File("test.txt");
 
    System.out.println(temp.getAbsolutePath()); //절대주소값 구함.
 
//    BufferedWriter writer = new BufferedWriter(new FileWriter("C:\\Class\\Java\\JavaTest\\data.txt"));
 
//    BufferedWriter writer = new BufferedWriter(new FileWriter(".\\dat\\data.txt"));
 
    try {
        BufferedReader reader = new BufferedReader(new InputStreamReader(System.in)); //문자열 입력용
        
        //얘는 파일입출력용    
        BufferedWriter writer = new BufferedWriter(new FileWriter(".\\dat\\member.dat"true)); 
 
        String name = "", age = "", address = "", tel = "";
 
        System.out.print("이름 : ");
        name = reader.readLine();
 
        System.out.print("나이 : ");
        age = reader.readLine();
 
        System.out.print("주소 : ");
        address = reader.readLine();
 
        System.out.print("전화번호 : ");
        tel = reader.readLine();
 
        writer.write(String.format("%s,%s,%s,%s\n", name, age, address, tel));
 
        writer.close();
        System.out.println("작성 완료.");
 
    } catch (IOException e) {
        e.printStackTrace();
 
    }
cs


회원정보 출력하기


1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
try {
    BufferedReader reader = new BufferedReader(new FileReader("dat\\member.dat"));
 
    String line = "";
    System.out.println("[이름]\t[나이]\t[전화번호]\t\t[주소]");
    
    //readerㅔ서 라인을 읽은 값이 null일때 탈출하도록. 
    //즉 메모장의 마지막줄때 탈출하도록
    while ((line = reader.readLine()) != null) { 
 
//        System.out.println(line);
 
 
        String[] temp = line.split(","); // , : 구분자
        System.out.println(temp[]);
        System.out.printf("%s\t%s\t%s\t%s\n"
                , temp[0]
                , temp[1]
                , temp[3]
                , temp[2]);
    }
    reader.close();
catch (Exception e) {
    e.printStackTrace();
}
cs


댓글

Designed by JB FACTORY