作者: Dora 时间: 2014-3-4 13:45
class SplitString {
private String str;
private int byteNum;
public SplitString() {}
public SplitString(String str, int byteNum)
{
this .str = str;
this .byteNum = byteNum;作者: Dora 时间: 2014-3-4 13:46
分析:题目的要求是从字符串中按字节数截取,所以字符串转换为字节数组是肯定的,字母还好说,就占一个字节,问题的关键在于字符串中有汉字的出现,GBK编码中汉字字符是占两个字节的,两个字节分开无法识别,当截取的字节数最后一位是代表半个字符的字节时,运行结果中的字符串末尾会出现“?”以表示最后一个字节无法识别。所以需要在程序中将这种情况回避掉,只显示整个的汉字字符。