/**
* 对字符串加密
*/
public static String encodeStr(String srcDecodeStr){
if (srcDecodeStr == null || srcDecodeStr.trim().isEmpty()) {
System.out.println("输入待加密字符串为空!")
return null
}
int length = srcDecodeStr.length()
if (length>1000){
System.out.println("输入待加密字符串太长,超过1000个字符!")
return null
}
for (int i = 0
char charTemp = srcDecodeStr.charAt(i)
if (!(Character.isDigit(charTemp) || Character.isLowerCase(charTemp) || Character.isUpperCase(charTemp))){
System.out.println("输入待加密字符串非法!")
return null
}
}
StringBuilder stringBuilder = new StringBuilder()
for (int i = 0
Character encodeChar=null
char charTemp = srcDecodeStr.charAt(i)
if (Character.isDigit(charTemp)){
if (charTemp < '9'){
encodeChar = (char) (charTemp + 1)
}else {
encodeChar='0'
}
}else {
if (Character.isLowerCase(charTemp)){
char newChar = (char) (charTemp - 32)
if (newChar < 'Z'){
encodeChar = (char) (newChar + 1)
}else {
encodeChar='A'
}
}else {
char newChar = (char) (charTemp + 32)
if (newChar < 'z'){
encodeChar = (char) (newChar + 1)
}else {
encodeChar='a'
}
}
}
stringBuilder.append(encodeChar)
}
return stringBuilder.toString()
}
/**
* 对字符串进行解密
*/
public static String decodeStr(String srcEncodeStr){
if (srcEncodeStr == null || srcEncodeStr.trim().isEmpty()) {
System.out.println("输入待解密字符串为空!")
return null
}
int length = srcEncodeStr.length()
if (length>1000){
System.out.println("输入待解密字符串太长,超过1000个字符!")
return null
}
for (int i = 0
char charTemp = srcEncodeStr.charAt(i)
if (!(Character.isDigit(charTemp) || Character.isLowerCase(charTemp) || Character.isUpperCase(charTemp))){
System.out.println("输入待加密字符串非法!")
return null
}
}
StringBuilder stringBuilder = new StringBuilder()
for (int i = 0
Character decodeChar=null
char charTemp = srcEncodeStr.charAt(i)
if (Character.isDigit(charTemp)){
if (charTemp > '0'){
decodeChar = (char) (charTemp - 1)
}else {
decodeChar='9'
}
}else {
if (Character.isLowerCase(charTemp)){
char newChar = (char) (charTemp - 32)
if (newChar > 'A'){
decodeChar = (char) (newChar - 1)
}else {
decodeChar='Z'
}
}else {
char newChar = (char) (charTemp + 32)
if (newChar > 'a'){
decodeChar = (char) (newChar - 1)
}else {
decodeChar='z'
}
}
}
stringBuilder.append(decodeChar)
}
return stringBuilder.toString()
}