본문 바로가기

java

split error 오늘 value object의 데이터를 구분자를 이용하여 String으로 묶고 푸는 작업을 하다 에러를 경험하였습니다. 문자를 구분해주는 구분자는 보통 컴마 (,) 를 사용합니다. 하지만 복잡한 구조의 경우 뎁스를 표현하기 위해서 구분자가 여러개 들어가는 경우도 있습니다. 오늘 에러가 난 이유는 구분자를 | 로 사용해서인데, 구글링해보니 정규식의 특수문자라는 사실을 알게되었습니다. 정규식의 Special Character는 다음과 같습니다. * + ? ^ $ . [] {} () | / \ 되도록 split 할 때에는 정규식의 Speical Character는 피해서 사용해야겠네요. split시 위의 정규식 예약어를 사용하는 방법도 있습니다. \를 붙여주면되는데요 가령 ?의 경우 \?를 사용하면 되겠습니다.. 더보기
Decompile - 디컴파일 Decompile을 하는 이유는 간단하다. 소스를 보기 위해서.... apk파일을 열어보면 xml은 깨져있고 java파일은 보이지도 않는다.소스를 보기 위해서는 어떻게 해야할까?알고있는 몇가지를 포스팅해본다. - dex2jar https://github.com/pxb1988/dex2jar실행파일을 미러사이트에서 받으면 된다. 압축을 풀면 위와 같은 파일들을 볼 수 있다. 다음으로 apk에서 classes.dex파일을 추출하여 위 폴더에다 넣는다. 해당 폴더의 경로에서 d2j-dex2jar.bat classes.dex 를 입력하면 dex파일을 jar파일로 변환시켜준다. 변환된 jar파일의 압축을 풀면 java파일을 볼수가 있다. - smali2java dex2jar에 GUI까지 더해진 것이라 생각하면 된다.. 더보기