请问在vb里字符串是不是有限制,那请问有没有办法取消掉这个限制。

解决方案 »

  1.   

    不明白你的意思如果说是string形态,那么可以在0~65535个字符之间,你觉得这么长还不够吗
      

  2.   

    字符串有两种:变长与定长的字符串。 变长字符串最多可包含大约 20 亿 ( 2^31)个字符。
     定长字符串可包含 1 到大约 64K ( 2^16 ) 个字符。注意    Public 定长字符串不能在类模块中使用。String 之字符码的范围是 0 到 255。字符集的前 128 个字符(0 到 127)对应于标准的 U.S. 键盘上的字符与符号。这前 128 个字符与 ASCII 字符集中所定义的相同后 128 个字符(128 到 255)则代表特殊字符,例如国际字符,重音符号,货币符号及分数。String 的类型声明字符为美圆号 ($)。
      

  3.   

    可以用数组  
    private m_char(1 To 10) As String
        通过循环来完成 一个固定长度字符串的截取,假设他是1000字符放
        通过 MOD(<字符表达式>,<起始位置>,<个数>) 这个函数来分割 平均的分在一个个数组单元中。
        
      

  4.   

    限制是可以突破的
    我就曾经用vfp实现过
    无限长度的超长数字的加法
    数字长度早就突破了向如int,double之类的限制
    就是受内存限制
      

  5.   

    数据类型  存储空间大小        范围
    String  10字节加字符串长度  0到大约20亿这是在VB参考中找到的
      

  6.   

    不好意思,可能没说清楚。
    我想字符串长度应该是有限制的,我用Internet Transfer控件取得网页的源码,并放在一个string变量里,结果发现所取得的源码远远不够。我用的是Internet Transfer控件的OpenURL方法。
    代码如下:
    Public Function OpenURL(URL As String)
    Dim Text As String
    On Error GoTo Err
    Text = Inet1.OpenURL(URL)
    OpenURL = Text
    Exit Function
    Err:
    OpenURL = "-1"
    End Function
    因为我在pb中要用到此函数的返回值,但发现其得到的源码远远不够。由于其它原因不想用Internet Transfer控件的Execute方法。
    那请问,此问题怎么解决?这下不知道说清楚没。如果没有String长度的限制,那请问取得的网页源码为何远远不够呢?
      

  7.   

    看一下OpenURL的参数说明,看返回值是何类型。
      

  8.   

    OpenURL返回的长度本来就有限。这是因为Inet控件自己有一个缓存的缘故
    所以你最好用循环 + GetChunk,读取缓存的全部数据。
      

  9.   

    OpenURL返回的长度本来就有限,好像不太对。因为在pb里用此控件的OpenURL返回的长度可是没有限制的啊,但是pb里没有错误处理机制。