식별자 이름을 원래대로 되돌리는 코드를 구현하였다.
테스트 입력과 결과는 다음과 같다.
입력 소스코드
int ____(int _, int __){
int ___ = _ + __;
return ___;
}
역난독화 대상 코드이다.
역난독화 결과 소스코드
int func(int a, int b) {
int result = a + b;
return result;
}
역난독화 결과 출력된 코드이다.
구현
원래의 식별자와 난독화를 거친 후의 식별자 정보를 알고있어야 원래 소스코드에서 작성된 식별자로 되돌릴 수 있다. 이번에는 map.txt라는 파일에원래 식별자 이름,난독화된 식별자 이름
형식으로 정보를 나열해두었다.
프로그램은 파일에서 읽어온 문자열을 map으로 가공하여 저장해 두었다가, listener에서 식별자 노드를 처리할때 map.get을 통해 난독화 이전의 식별자를 불러오도록 한다.
[▼ 파일 처리]
[▼ 테스트 화면]