/**
* 36進数変換 long → String
*/
public static String long36String(long value){
if (value==0) return "0";
long v = value;
StringBuilder sb = new StringBuilder();
while(v > 0){
int i = (int)(v % 36);
if (i < 10){
sb.append(i);
}else{
i += 'a' - 10;
sb.append*1;
}
/**
* 36進数変換 String → int
*/
public static int str36ToInt(String s){
char[] c = s.toCharArray();
int rtn=0;
int k=0;
for(int i=c.length-1;i > -1;i--){
if ('0' <= c[i] && c[i] <= '9'){
rtn += (c[i] - '0') * Math.pow(36,k);
}else if('a' <= c[i] && c[i] <= 'z'){
rtn += (c[i] - 'a' + 10) * Math.pow(36,k);
}else if('A' <= c[i] && c[i] <= 'Z'){
rtn += (c[i] - 'A' + 10) * Math.pow(36,k);
}
k++;
}
return rtn;
}
*1:char)i);
}
v = v / 36;
}
return new String(sb.reverse(