str="2008中国人民共和国"我想要输出占六个汉字位的字符串.
str是未知的,也有可能是"abcdefg"等

解决方案 »

  1.   

    那和字符串的编码有关吧? 如果不记这个, 你直接输出12个byte吧
      

  2.   

    怎么输出12byte我只会用SubString(12)
      

  3.   

    参考如下代码:
    string str = "2008中国人民共和国";
    Text = Encoding.Default.GetString(Encoding.Default.GetBytes(str), 0, 12);
      

  4.   


    一般来说是可以的,但是这只局限于前面占一个位的双数个string str = "2008年1月中华人民共和国";
    Text = Encoding.Default.GetString(Encoding.Default.GetBytes(str), 0, 12);结果是什么呢:
      

  5.   

    string str = "2008年01月中华人民共和国";
    string temp = Encoding.Default.GetString(Encoding.Default.GetBytes(str), 0, 12);
    if (temp[temp.Length - 1] != str[temp.Length - 1]) // 判断最后一个字符是否完整
    temp = temp.Remove(temp.Length - 1);
    Console.WriteLine(temp);