考虑:
char [] chararray = txt1.Text;
Run Code Online (Sandbox Code Playgroud)
我们如何在Visual Basic 6.0中执行相同的操作?
这取决于你最终想做什么.
例如,您可以在VB6中执行此操作:
Dim b() As Byte
b = Text1.Text
Run Code Online (Sandbox Code Playgroud)
这样,b数组将被调整大小以保存Unicode数据"string"- 但是然后每个字符将被分割为两个字节,这可能不是你想要的.这个技巧只适用于Byte.
你也可以这样做:
Dim b() As Byte
b = StrConv(Text1.Text, vbFromUnicode)
Run Code Online (Sandbox Code Playgroud)
每个字母现在占用一个字节,但扩展字符将消失.仅当当前系统代码页包含所需字符时才执行此操作.
您可以手动将字符复制到数组:
Dim s() As String, i As Long
ReDim s(1 To Len(Text1.Text))
For i = 1 To UBound(s)
s(i) = Mid$(Text1.Text, i, 1)
Next
Run Code Online (Sandbox Code Playgroud)
或者你甚至可以避免创建一个数组,Mid因为它还可以作为一个索引器操作符来改变一个字符,而无需复制或分配任何东西:
Dim s As String
s = Text1.Text
Mid$(s, 3, 1) = "!"
Run Code Online (Sandbox Code Playgroud)