현재 만들고 있는 앱에서 db를 사용하게 되었습니다.

그러다가 지금 테이블 생성에서 막혀버렸네요.


테이블 생성시 문자열을 사용자로부터 받아와 약간의 변환과정을 거친 후 그것을 테이블 이름으로 사용하려고 합니다.

예를들어 사용자가 "테이블1" 이렇게 입력했다면 테이블 이름을 "xpdlqmf1" 이런식으로 변환하는겁니다.

그리고 사용자가 다시 값을 가져올때는 "xpdlqmf1"을 원래 문자열로 디코딩할수도 있도록 하고요.


여기서 사용자가 "test ('테'스트!)" 이런 문자열을 입력해도 성공적으로 변환할 수 있는 방법이 있을까요?


처음에는 base64로 인코딩하려고 했는데 +, /, = 특수문자때문에 실패..

uft-8로 인코딩하면 %, +가 문제였고

utf-8에서는 16진수로 표기하니까 1234567890abcdef 이후 알파벳인 g, h로 %, +를 치환해서 사용해봤지만

URLEncode.encode로 인코딩하면 알파벳들은 %09 이런식으로 표현되는게 아니라 그 알파벳이 직접 나오더군요?

그래서 실패...


좋은 방법이 없을까요?

아니면 혹시 안드로이드 sqlite에서 테이블 이름에 사용할 수 있도록 특수문자를 예외처리할 수 있나요?


도와주세요 ㅠㅠ