LenB ?没有这个函数.我的是CR9

解决方案 »

  1.   

    可以用C#的方法
    str = "ab工";
    byte[] test = System.Text.Encoding.Default.GetBytes(str);这是test.Length 是等于4的
      

  2.   

    楼上的正确,
    比如说中文占两个字节,而英文字母占一个字节,
    所以使用
    //取字符串长度
    s = "iam方枪枪";
    int len = s.Length;//will output as 6
    byte[] sarr = System.Text.Encoding.Default.GetBytes(s);
    len = sarr.Length;//will output as 3+3*2=9
      

  3.   

    先谢了.
    问题是水晶报表没有GetBytes()方法.
    要求用水晶报表的语法实现,因为要作为一个函数在水晶报表中用.
      

  4.   

    好像确实没有办法直接区分中英文
    可以用asc()函数试试,循环字符串,然后判断如果asc()>255的就认为是中文,length=2,其他的就length=1,这样累加起来估计差不多