Ambiente VB.NETOk, ma quali? Qui ci vuole il cavatappi per ottenere qualche dettaglio...
1.tentativo
String$ viene sottolineato automaticamentecodice:Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click Dim aaa As String me.TextBox1.Text = String$(40, "-") End Sub
nell'Elenco attività dice:
in compilazione stessi errori....\WindowsApplication1\Form1.vb(71): La parola chiave non può contenere un carattere tipo.
2.tentativo
String viene sottolineato automaticamentecodice:Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click Dim aaa As String me.TextBox1.Text = String(40, "-") End Sub
nell'Elenco attività dice:
in compilazione stessi errori....\WindowsApplication1\Form1.vb(71): "String" non è un'espressione valida perché è un tipo classe.
e
....\WindowsApplication1\Form1.vb(71): Previsto "."
3.tentativo
cosi, ovviamente, funziona.....
A fronte delle letture che stò facendo, questi errori hanno un senso.codice:Dim MyString As New String("X", 30) Me.TextBox2.Text = MyString
Nel momento in cui decido di passare alla pratica mi scontro con vecchi esempi e cerco di dedurre per confronti oppure per togliermi certe curiosità prima di studiarle.
---------------------------------------------------------------------------
ho notato che:Originariamente inviato da daspide
la sintassi quindi l'opposto di VB6, ma anche del PadRight
comunque in futuro cercherò solo di prendere spunto per creare soluzioni pittosto che confronti/importazioni di esempicodice:.NET Dim MyString As New String("X", 30) prima si inserisce il carattere poi il n° di volte da ripetere VB6 Dim MyString As New String$(40, "-") prima si inserisce il n° di volte da ripetere poi il carattere
-------------------------------------------------------------------------------
qundi LenB leggeva l'unicode di ogni carattere in VB6; oggi, con .NET do per scontato che:La lunghezza che ottieni in entrambi i casi che hai citato è la lunghezza della stringa in caratteri. La dimensione in byte effettiva, nel caso di VB.NET, trattandosi di caratteri Unicode, è di 2 byte per ciascun carattere.
-----
Dim aa as string
me.t.text = aa.Lenght
-----
occuperà il doppio del n° di caratteri?!?!
ho provato così
non da errori, nel campo testo scrive 4 ToB 4 Ph 4.codice:Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click Dim aaa As String Dim bbb As Byte aaa = "xasd" Me.TextBox1.Text = aaa.Length Me.TextBox1.Text += " ToB " & Convert.ToByte(aaa.Length) Me.TextBox1.Text += " Ph " & bbb.Parse(aaa.Length) End Sub
in nessun caso mi dice che un carattere vale 2 BYTE!![]()
![]()
![]()

Rispondi quotando