下面的程序实现了依靠字节数对字符串进行截断操作
public class wzq
{
public static String str="中国abc";
//获取str的byte数组(默认的编码方式为GBK)
public static byte[] by=str.getBytes();
public static void main(String[] args) throws Exception
{
byte[] mby=new byte[by.length];
for(int i=0;i<4;i++){
mby[i]=by[i];
}
//由byte数组生成String时,必须指定编码方式
String mstr=new String(mby,"GBK");
System.out.println(mstr);
}
}
1byte=8bit,byte是字符编码中最小的单位,在byte[]中存储的就是构成每个字符的字节。
getBytes(String charsetName):其中的charsetName是编码方式,包括GBK,UTF-8等。就是通过哪种方式将byte[]中的字节转变成字符串(当然所生成的字符串会随着编码方式的不同而不同)。默认的编码方式为GBK。
这有篇很好的文章:点击打开链接,我已加收藏