代码之家  ›  专栏  ›  技术社区  ›  Searock

有关String.CopyTo()的帮助

  •  0
  • Searock  · 技术社区  · 16 年前

    我面临着一个问题 String.CopyTo() 方法。

    我正在尝试使用string.CopyTo()方法将值从string复制到char数组。

    Dim strString As String = "Hello World!"
    
    Dim strCopy(12) As Char
    
    strString.CopyTo(0, strCopy, 0, 12)
    
    For Each ch As Char In strCopy
         Console.Write(ch)
    Next
    

    有人能给我指出正确的方向吗?

    谢谢。

    编辑: 我在运行时发现这个错误。 ArgumentOutOfRangeException参数 索引和计数必须引用字符串中的位置。

    2 回复  |  直到 16 年前
        1
  •  1
  •   Community Mohan Dere    6 年前

    sourceIndex、destinationIndex或count为负数

    -或者-

    -或者-

    第一种情况不是真的,因为这些值为零或正。

    因此,对于目标数组来说,计数一定太大了。与其硬编码长度,不如这样做:

    strSource.CopyTo ( 0, destination, 4, strSource.Length );
    
        2
  •  1
  •   SLaks    16 年前

    ToCharArray() 方法:

    Dim strCopy As Char() = strString.ToCharArray()