Filtern
- VB.NET
Sie verwenden einen veralteten Browser (%browser%) mit Sicherheitsschwachstellen und können nicht alle Funktionen dieser Webseite nutzen.
Hier erfahren Sie, wie einfach Sie Ihren Browser aktualisieren können.
Hier erfahren Sie, wie einfach Sie Ihren Browser aktualisieren können.
Es gibt 39 Antworten in diesem Thema. Der letzte Beitrag () ist von Lupus.
-
-
-
-
-
-
-
-
-
-
also:
VB.NET-Quellcode
- Dim BArray(99, 1) As String
- Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
- BArray(1, 0) = "a"
- BArray(1, 1) = "0"
- BArray(2, 0) = "b"
- BArray(2, 1) = "1"
- '...
- End Sub
- Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
- For a As Single = 1 To 99
- If BArray(a, 0) = "" Then Exit For
- TextBox1.Text = TextBox1.Text.Replace(BArray(a, 0), BArray(a, 1))
- Next
- End Sub
-
Hey, coole Idee
Werd mal gucken was von beiden ich benutzen werd =)
e:/ So nächstens Problem.
Bin jetzt soweit:
Also ich werd mal deutlicher....es soll ne kleine Geheimschrift werden ^^.
Nur wenn ich das jetzt wieder entcoden möchte, soll er splitten bei alles 3 Ziffen.
Sprich:
001002001002
wäre ja "abab".
Nur er soll hier splitten:
001|002|001|002
Nur hab ich erlich gesagt noch nie mit der Split Funktion gearbeitet.
Also, was mach ich da nun?Dieser Beitrag wurde bereits 2 mal editiert, zuletzt von „Metal Freak“ ()
-
wie wärs denn damit:
VB.NET-Quellcode
- Dim Text As String = ""
- For Each a As String In TextBox1.Text.Split("|") ' teilt den Text bei jedem "|" auf
- Select Case a
- Case "001"
- Text += "a"
- Case "002"
- '...
- End Select
- 'oder, wenn du Arrays benutzt gehts schneller:
- For b As Single = 1 To 99
- If BArray(b, 0) = "" Then Exit For
- If BArray(b, 1) = a Then Text += BArray(b, 1) : Exit For
- Next
- Next
-
Mh..erlich gesagt verstehe ich dein Code nicht..
also ich habs mal so versucht:
VB.NET-Quellcode
- Private Sub TextBox1_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles TextBox1.TextChanged
- TextBox2.Text = TextBox1.Text.Replace("a", "001")
- TextBox2.Text = TextBox1.Text.Replace("b", "002")
- TextBox2.Text = TextBox1.Text.Replace("c", "003")
- TextBox2.Text = TextBox1.Text.Replace("d", "004")
- TextBox2.Text = TextBox1.Text.Replace("e", "005")
- TextBox2.Text = TextBox1.Text.Replace("f", "006")
- TextBox2.Text = TextBox1.Text.Replace("g", "007")
- TextBox2.Text = TextBox1.Text.Replace("h", "008")
- TextBox2.Text = TextBox1.Text.Replace("i", "009")
- TextBox2.Text = TextBox1.Text.Replace("j", "010")
- TextBox2.Text = TextBox1.Text.Replace("k", "011")
- TextBox2.Text = TextBox1.Text.Replace("l", "012")
- TextBox2.Text = TextBox1.Text.Replace("m", "013")
- TextBox2.Text = TextBox1.Text.Replace("n", "014")
- TextBox2.Text = TextBox1.Text.Replace("o", "015")
- End Sub
VB.NET-Quellcode
- Private Sub EntschluesselButton_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click
- TextBox3.Text = TextBox2.Text.Replace("001", "a")
- TextBox3.Text = TextBox2.Text.Replace("002", "b")
- TextBox3.Text = TextBox2.Text.Replace("003", "c")
- TextBox3.Text = TextBox2.Text.Replace("004", "d")
- TextBox3.Text = TextBox2.Text.Replace("005", "e")
- TextBox3.Text = TextBox2.Text.Replace("006", "f")
- TextBox3.Text = TextBox2.Text.Replace("007", "g")
- TextBox3.Text = TextBox2.Text.Replace("008", "h")
- TextBox3.Text = TextBox2.Text.Replace("009", "i")
- TextBox3.Text = TextBox2.Text.Replace("010", "j")
- TextBox3.Text = TextBox2.Text.Replace("011", "k")
- TextBox3.Text = TextBox2.Text.Replace("012", "l")
- TextBox3.Text = TextBox2.Text.Replace("013", "m")
- TextBox3.Text = TextBox2.Text.Replace("014", "n")
- TextBox3.Text = TextBox2.Text.Replace("015", "o")
- End Sub
Klappt aber i-wie nicht -
das problem ist, wenn du die Zahlen nicht irgendie voneinander trennst (bei mir wars eben mit "|"), kanst du nicht unterscheiden, ob "010011" jetzt "01" + "001" + "1" oder "010" + "011" heißt.
Zu meinem Code:
Bei der Split-Anweisung wird ein Array erstellt (das "|" fällt automatisch weg), der dann mit dem for each abgefragt wird. Dann wird kontrolliert was für die Zeichenfolge eingesetzt werden soll (mit Select case, oder bei Arrays, indem im Array die passende Zeichenfolge gesucht wird.). Deshalb würd ich an deiner Stelle Arrays nemen, weil du alles dann nur einmal schreiben musst. -
VB.NET-Quellcode
- Dim Text As String = ""
- For Each a As String In TextBox1.Text.Split("|") ' teilt den Text bei jedem "|" auf
- Select Case a
- Case "001"
- Text += "a"
- Case "002"
- '...
- End Select
- 'oder, wenn du Arrays benutzt gehts schneller:
- For b As Single = 1 To 99
- If BArray(b, 0) = "" Then Exit For
- If BArray(b, 1) = a Then Text += BArray(b, 1) : Exit For
- Next
- Next
Aber wie sollen die "|" da rein kommen? ^^.
Dann muss ich ja beim BArray beim Form_Load überall n' "|" hinter die Nummer schreiben..oder?...eigentlich will ich nicht dass das mit | gemacht wird...sondern dass er automatisch bei jeder 5 stelle splittet... -
ach so, dann versuch mal das (habs selbst nicht getestet...):
-
Das verstehe ich jetz garnicht mehr
Hat das jetzt noch was mit BArray zu tun?
Eben hab ich das ja noch gecheckt mit
BArray(1, 0) = "a"
BArray(1, 1) = "001"
und
For a As Single = 1 To 99
If BArray(a, 0) = "" Then Exit For
TextBox2.Text = TextBox1.Text.Replace(BArray(a, 0), BArray(a, 1))
Next
aber jetzt bin ich ziemlich verwirrt, sry -
also, ich schreib mal den ganzen code, hab selbst nen paar fehler gemacht, aber so sollte es klappen:
VB.NET-Quellcode
- Dim BArray(99, 1) As String
- Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
- BArray(1, 0) = "a"
- BArray(1, 1) = "000"
- BArray(2, 0) = "b"
- BArray(2, 1) = "001"
- '...
- End Sub
- Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
- ' in Zahlen umwandeln:
- For a As Single = 1 To 99
- If BArray(a, 0) = "" Then Exit For
- TextBox1.Text = TextBox1.Text.Replace(BArray(a, 0), BArray(a, 1))
- Next
- End Sub
- Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click
- 'wieder zurückumwandeln:
- Dim Text As String = "", Textarray(999) As String, c As Single = 0 'Text ist der neue Text
- For a As Single = 0 To TextBox1.Text.Length - 3 Step 3
- Textarray(c) = TextBox1.Text.Substring(a, 3) 'Code wird aufgeteilt (hab hier c vergessen, sorry)
- c += 1
- Next
- For Each a As String In Textarray ' jeder Teil wird geprüft und der entsprechende Buchstaben eingesetzt
- If a = "" Then Exit For
- For b As Single = 1 To 99
- If BArray(b, 0) = "" Then Exit For
- If BArray(b, 1) = a Then Text += BArray(b, 0) : Exit For ' sorry hab mich vorhin verschrieben :(
- Next
- Next
- TextBox1.Text = Text
- End Sub
-
-
noch was, wie du die die sache mit dem Eintragen sparen kannst:
VB.NET-Quellcode
und wenn du Groß- und Kleinschreibung beachten willst, musst du halt noch die kleinen Buchstaben eintragen (ab chr(97))
-
Ähnliche Themen
-
Programm zum erstellen einer Musikplaylist
Superscheibenkleiste - - Sonstige Problemstellungen
-
2 Benutzer haben hier geschrieben
- Lupus (20)
- Gast (20)