//输入是一个json串,如果大于2000个字节就把2000个字节存到value1中。如果小于2000个字节就直接存到value1中
//返回的是存入数据库中的字符串
//算法思想:每截10个字符串长度就判断getBytes()是否大于2000个字节,数据库中vachar2(2000),
//2000指的是字节个数
public static String stringSub(String json) throws UnsupportedEncodingException {
int a = 0;
int b = 10;
StringBuffer str = new StringBuffer("");
System.out.println(json.getBytes("gbk").length);
//如果json的字节数少于2000,那么直接把json串存入到返回。
if (json.getBytes("gbk").length > 2000) {
while (true) {
if (str.toString().getBytes("gbk").length < 2000) {
str.append(json.substring(a, b));
a += 10;
b += 10;
} else {
String str2 = str.substring(0, str.length() - 10);
return str2;
}
}
}
return json;
}