메뉴 건너뛰기

조회 수 7385 추천 수 0 댓글 0
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄

//파일을 읽고 쓰기 기능을 이용하여 일반문서를 읽고 암호화 하여
//저장하고 암호화된 문서를 읽고 일반 문서로 변환하는 프로그램 작성하기


 

import java.io.*;
import java.util.*;
 
class soo{
 public static void main(String[] args) throws IOException{
    System.out.println("1번과 2번중 하나를 눌러주세요 1번:파일을 읽고 암호화 합니다. " +
               " 2번:암호화 문서읽고 일반으로 변화합니다." );
    System.out.print(":");
    Scanner scan=new Scanner(System.in);
    int input=scan.nextInt();          //번호 입력할수있다.
  
    FileReader fr=null;
    FileWriter fw=null;
    int secret=3;   // 암호화&복호화 해주려는 값
   
   try{   
      if(input==1){                            //1번 입력  
      System.out.println("일반문서중 불러오고자 하는 문서명을 입력해주세요.ex)test.txt  ");
      System.out.print(":");
      String fileName=new Scanner(System.in).nextLine();  //불러오고자 하는파일명 입력 
      fr=new FileReader(fileName);                       //불러온 파일에서 내용읽어온다.
    
     
      System.out.println("암호화된 파일을 저장할  .txt 명을 입력해주세요. ex)sos.txt");
      System.out.print(":");
      String encryptionFileName=new Scanner(System.in).nextLine();  //불러오고자 하는파일명 입력
      fw=new FileWriter(encryptionFileName);        //암호화될 파일을 만든다.
     
      int data=0;
     
     while((data=fr.read())!=-1){
       data+=secret;   //암호화
       char ch=(char)data;  
       System.out.print(ch);         //암호화 출력    
       fw.write(data);  //암호화된 데이터를 저장한다.        
     }//while
    } //if
     
    else if(input==2){
     System.out.println("암호화 문서만 불러오세요 .ex)sos.txt  ");
     System.out.print(":");
     String fileName=new Scanner(System.in).nextLine();  //불러오고자 하는파일명 입력 
     fr=new FileReader(fileName);              //복호화 문서 파일 내용을 읽어온다.
    
     System.out.println("복호화될 파일을 저장할  .txt 명을 입력해주세요. ex)sos.txt");
      System.out.print(":");
      String encryptionFileName=new Scanner(System.in).nextLine();  //불러오고자 하는파일명 입력
      fw=new FileWriter(encryptionFileName);        //복호화될 파일을 만든다.
     
     int data=0;
     while((data=fr.read())!=-1){
      data-=secret;   //복호화
      char ch=(char)data;  
      System.out.print(ch);         //복호화 출력
      fw.write(data);  //복호화된 데이터를 저장한다.
     
     }//while  
      }  //else if  
   }//try{}
   catch(FileNotFoundException abc){
       System.out.println("파일을 찾을수 없습니다.");
      }
   catch(IOException ee){
  System.out.println("파일 읽을수 없다.");
   }
      finally{
    try{
        fr.close();
        fw.close();  //저장값을 반환해준다.
       }
    catch(Exception ee){}
 
   
       }//finally 닫고
      
 } //main()
 
}  //class


List of Articles
번호 제목 날짜 조회 수
131 자바용 날짜 계산 2016.09.19 4543
130 자바에서 문자열 비교 시 == 가 아닌 equals를 써야하는 이유 file 2023.02.15 114
129 자바 필드, 멤버 변수, 전역 변수는 같은 말? file 2023.02.15 74
128 자바 클래스와 메서드 2023.02.15 74
127 자바 클래스, 객체, 인스턴스 구분하기 file 2023.02.15 52
126 자바 초기화는 무슨 뜻이고 왜 해야할까? file 2023.02.15 84
125 자바 정규식 마스킹처리 file 2018.06.26 2631
124 자바 오버라이드, 오버로드 차이 알아보기 file 2023.02.15 70
123 자바 쓰레드 예제 및 사용 이유 알아보기 file 2023.02.15 72
122 자바 생성자란 무엇인가? file 2023.02.15 61
121 자바 배열 복사하는 방법 file 2023.02.15 63
120 자바 메소드(Method)란 무엇인가? file 2023.02.15 78
119 자바 랜덤 함수(Java random) file 2019.03.05 766
118 자바 대소문자 확인하는 방법 file 2023.02.15 130
117 자바 다양한 형변환. 그리고 아스키 코드 String char int : JAVA 2016.12.09 4188
116 자바 날짜 포맷 변환 방법 file 2018.06.21 1425
115 자바 객체화(인스턴스화) 알아보기 file 2023.02.15 69
114 자바 XML 제어 라이브러리 XStream : JAVA 2016.12.09 4917
113 자바 Thread dump file 2023.02.15 58
112 자바 this, super 차이 알아보기 file 2023.02.15 72
Board Pagination Prev 1 2 3 4 5 6 7 8 Next
/ 8

하단 정보를 입력할 수 있습니다

© k2s0o1d4e0s2i1g5n. All Rights Reserved