• 티스토리 홈
  • 프로필사진
    chantleman
  • 방명록
  • 공지사항
  • 태그
  • 블로그 관리
  • 글 작성
chantleman
  • 프로필사진
    chantleman
    • 분류 전체보기 (326)
      • 프로젝트 (1)
      • react (2)
      • 코딩테스트 (133)
        • lv0 (101)
        • lv1 (10)
        • lv2 (7)
        • lv3 (15)
      • 오류 (11)
      • 리눅스 (2)
      • 닷넷 (1)
      • 자바 (67)
        • spring (7)
      • js (38)
      • 오라클 (40)
        • PLSQL (4)
      • cs (7)
      • 도커 aws (3)
      • 단축키 (3)
      • 나만봐 (0)
  • 방문자 수
    • 전체:
    • 오늘:
    • 어제:
  • 최근 댓글
      등록된 댓글이 없습니다.
    • 최근 공지
        등록된 공지가 없습니다.
      # Home
      # 공지사항
      #
      # 태그
      # 검색결과
      # 방명록
      • File
        2024년 08월 11일
        • chantleman
        • 작성자
        • 2024.08.11.:12

         

         

        폴더 생성

         

        	File dir2 = new File("D:/test/1");
        	if(dir2.mkdir())	System.out.println(dir2+"만들기 성공");
        	else	System.out.println(dir2+"만들기 실패");

         

        mkdir()는 부모 폴더를 먼저 만든 후에 자식 폴더를 만들어야 함

        부모, 자식 폴더를 한 번에 생성하고 싶다면 mkdirs()를 사용해야 함

         

         

         

        	File dir1 = new File("D:/test/1/2");
        	if(!dir1.exists())
        	{
        		if(dir1.mkdirs()) {
        			System.out.println(dir1+"만들기 성공");
        		}
        		else {
        			System.out.println(dir1+"만들기 실패");
        		}
        	}

         

         


         

        파일 생성

         

        	File f = new File("D:/test/java.txt");
        		if (!f.exists()) {
        			try {
        				f.createNewFile();
        			} catch (IOException e) {
        				e.printStackTrace();
        			}
        		}

         

         

         

         


         

         

        데이터 읽기

         

        	FileInputStream fis = null;
        	fis = new FileInputStream("D:\\test/abcd.txt"); 
        	int data =0;
          	while((data=fis.read())!=-1) //데이터가 없으면 -1 반환   
        	{
        		System.out.println((char)(data));
        	}
        	fis.close();

         

         

         

         

        try-catch까지 한 소스

        	FileInputStream fis = null;
        	try {
        		fis = new FileInputStream("D:\\test/abcd.txt"); 
        		int data =0;
        		while((data=fis.read())!=-1) //데이터가 없으면 -1 반환
        		{
        			System.out.println((char)(data));
        		}			
        	} catch (Exception e) {
        		e.printStackTrace();
        	}
        	finally {
        		try {
        			fis.close();
        		} catch (IOException e) {
        			e.printStackTrace();
        		} 
        	}

         

         

        BufferInputStream 

        	FileInputStream fis = new FileInputStream("D:/test/java.txt");
        			
        	//지정하지 않으면 기본 사이즈 8192
        	BufferedInputStream bis = new BufferedInputStream(fis);
        	int data=0;
        	while((data=bis.read())!=-1)
        	{
        		System.out.println((char)data);
        	}

        하드디스크에 자주 접촉하는 것은 물리적 손상을 일으킬 수 있으며 속도가 느림

        따라서 한 번 접촉할 때 많은 값을 가져오는 것이 속도와 물리적인 측면에서 유리함

        기본적으로 8192 바이트 크기를 가지며 사이즈를 수정할 수도 있음

         

         

         


         

         

        데이터 쓰기

         

        	FileOutputStream fos = null;
        	fos = new FileOutputStream("D:/test/java.txt");
        	String str = "abcde";
        	fos.write(str.getBytes()); 
            fos.close();

         

         

        	FileOutputStream fos = null;
        		
        	try {
        		fos = new FileOutputStream("D:/test/java.txt");
        		String str = "abcde";
        		fos.write(str.getBytes()); //파일은 바이트로 이루어져있기 때문에 byte로 
        	} catch (Exception e) {
        		e.printStackTrace();
        	}
        	finally {
        		try {
        			fos.close();
        		} catch (IOException e) {
        			e.printStackTrace();
        		}
        	}

         

         


         

        파일 복사

         

        	Path source = Paths.get("D:/test/abcd.txt");
        	Path target = Paths.get("D:/test/javaCopy.txt");
        		
        	try {
        		Files.copy(source, target,StandardCopyOption.REPLACE_EXISTING); //이미 있으면 덮어씌움
        	} catch (IOException e) {
        		e.printStackTrace();
        	}

         

         

        728x90

        '자바' 카테고리의 다른 글

        JDBCUtil  (0) 2024.08.26
        yes24 데이터 DB 넣기  (1) 2024.08.19
        데이터 크롤링  (0) 2024.08.09
        maven  (0) 2024.08.09
        톰캣 포트 변경하기  (0) 2024.08.07
        다음글
        다음 글이 없습니다.
        이전글
        이전 글이 없습니다.
        댓글
      조회된 결과가 없습니다.
      스킨 업데이트 안내
      현재 이용하고 계신 스킨의 버전보다 더 높은 최신 버전이 감지 되었습니다. 최신버전 스킨 파일을 다운로드 받을 수 있는 페이지로 이동하시겠습니까?
      ("아니오" 를 선택할 시 30일 동안 최신 버전이 감지되어도 모달 창이 표시되지 않습니다.)
      목차
      표시할 목차가 없습니다.
        • 안녕하세요
        • 감사해요
        • 잘있어요

        티스토리툴바