ERLEDIGT
NEIN
NEIN
ANTWORTEN
40
40
ZUGRIFFE
1252
1252
EMPFEHLEN
-
21.07.10 21:04 #31
- Registriert seit
- Jul 2010
- Ort
- Villach (Kärnten)
- Beiträge
- 33
Hallo.
Normalerweise dürfte dies bereits behandelt werden. Da ich aus dem File rauslese und manuell den String editiere indem ich die letzte Zeile einfach ignoriere siehe
--> i<max-1 sollte die letzte Zeile ignorieren.Code :1 2 3 4
if (s3.Equals(s2[i].Remove(s2[i].Length-1)) && (i < max-1)) { b = true; }
Poste bitte noch mal jetzt deinen neuen Code, falls du jetzt was kritisches geändert hast.
Sag mir konkret was du nicht verstehst, weil ich glaube nicht dass du wirklich den ganzen Code nicht verstehst, so Sachen wie eine einfache if-Anweisung.
MfG Nadriel
-
28.07.10 10:00 #32headhuner Tutorials.de Gastzugang
Moin,
als erstes muss ich mich mal entschuldigen.
Da ich immer noch nicht registriert bin, wie ich es eig. machen wollte, bitte ich euch nicht vor Wut mit irgednwas nach mit zu werfen :o. Ich war von Freitag bis Dienstag in Italien im Urlaub, und hatte so keine möglichkeit die Registrierung abzuschließen.
Ich versuch es so schnell ich kann und hoffe das ich heute Abend dran denke es zu machen.
Ansonsten:
1. Wieso [] Klammern anstatt () wo liegt der Unterschied?
2. Unterschied zwischen String und String[]
3. .Length Befehl, was bedeutet er, was macht er?
4. int i = 0; i < max; i++ Was passiert in diesem Teil des Codeabschnittes?
5. s3.Equals(s2[i].Remove(s2[i].Length-1) Was passiert in diesem Teil des Codeabschnittes?
6. (i < max-1)) hattest du ja bereits erklärt
Ein paar Fragen weichen auch vom Code ab oder sind total Simpel. Aber ich lerne C# eigenständig,
da wir in der Schule nur C++ Konsolenanwendungen üben. Bei diesen schreiben wir kleine Programme,
mit Befehlen die man braucht um das Betriebssystem Windows programmieren zu können. Also wir tasten
uns ran.
Also ich hab immer noch den gleichen Quellcode wie du ihn gepostet hast.
Hab halt nur bsp:
private void bLogin_Click(object sender, EventArgs e)
zu
private void button1_Click(object sender, EventArgs e)
gemacht.
Und das bei allen. Natürlich hab ich das ganze dann auch im Quellcode geändert.
Aber wenn du den Qellcode willst, dann warte ich poste ihnn gleich nach.
-
28.07.10 12:05 #33headhuner Tutorials.de Gastzugang
Hab mich mal schlau gemacht.
Fehler beim Programm:
ArgumentOutOfRangeException wurde nicht behandelt.
StartIndex cannot be less than zero.
Parameter name: startIndex
Dann hab ich online bei msdn mal ein bisschen gesucht und bin auf folgednes gestoßen:
ArgumentOutOfRangeException wird ausgelöst, wenn eine Methode aufgerufen wird und mindestens eines der übergebenen Argumente nicht NULL (Nothing in Visual Basic) ist und keinen gültigen Wert enthält.
...
http://msdn.microsoft.com/de-de/libr...=VS.80%29.aspx
Ausnahmetyp: ArgumentOutOfRangeException
Bedingung: Es wurde versucht, den value-Parameter auf einen kleineren Wert als 0 festzulegen.
http://msdn.microsoft.com/de-de/libr...8VS.80%29.aspx
gruß
headhuner
-
28.07.10 12:14 #34headhuner Tutorials.de Gastzugang
sry für nen weiteren doppelpost, hab den quellcode vergessen zu posten.
Form1.cs
Code :1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74
using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Linq; using System.Text; using System.Windows.Forms; namespace Loginmaske { public partial class Form1 : Form { public Form1() { InitializeComponent(); } private void button1_Click(object sender, EventArgs e) { Keko k = new Keko("C:\\test.txt"); String s = k.read(); char[] a = new char[1]; a[0] = '\n'; String[] s2 = s.Split(a); bool b = false; String s3 = textBox1.Text + " " + textBox2.Text; int max = s2.Length; for (int i = 0; i < max; i++) { if (s3.Equals(s2[i].Remove(s2[i].Length-1)) && (i < max-1)) { b = true; } else if(s3.Equals(s2[i])) { b = true; } } if (b) { MessageBox.Show("Login erfolgreich!"); } else { MessageBox.Show("Login fehlgeschlagen!"); } } private void textBox1_TextChanged(object sender, EventArgs e) { } private void textBox2_TextChanged(object sender, EventArgs e) { } private void button2_Click(object sender, EventArgs e) { Form2 form2 = new Form2(); form2.Show(); } } }
Keko.cs
Code :1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.IO; using System.Windows.Forms; namespace Loginmaske { class Keko { private string fileName = ""; public Keko(string fileName) { this.fileName = fileName; } public string read() { StreamReader myReader = File.OpenText(fileName); String s = myReader.ReadToEnd(); myReader.Close(); return s; } } }
So hier is noch der Quellcode.
Und ochma verzeihung wegen Doppelpost.
gruß
headhunter
-
28.07.10 12:28 #35
- Registriert seit
- Jul 2010
- Ort
- Villach (Kärnten)
- Beiträge
- 33
zu 1.: was du jetzt konkret meinst verstehe ich nicht ganz aber um gleich die 2. Frage auch einzubauen, mit Datentyp[] definierst du ein Array von deinen angegeben Datentyp. Da du die Frage stellst denke ich mal du weißt auch nicht was ein Array ist. Um das zu beantworten solltest du dich lieber auf C#-Tutorials umschaun. Wie gesagt deine andere Frage zu "()" versteh ich nicht ganz meinst du zB String asdf = new String()? () kennzeichnen zB Funktionsklammern, aber das solltest du glaube ich wissen
und der konkrete Unterschied zwischen String und String[] liegt darin, dass String bloß eine Zeichenkette beinhaltet/ beinhalten kann und String[] eine Menge von Zeichenketten beinhaltet/ beinhalten kann.
zu 3.: .Length gibt dir die Länge eines beliebigen Datentyps zurück. Bei einem String[] die Länge des Arrays zB bei String[5] liefert es 5. Bei Nicht-Arrays also bei Standarddatentypen wie int, char, String etc. liefert er die Länge des Wertes die die Variable beinhaltet.
zu 4.: Das ist das was man in eine for-Schleife immer einträgt.
Mit einem Beispiel einfacher erklärlich:
Code :1 2 3 4 5 6 7 8
for(int i = 0; i < MAX; i ++) // die Variable i wird temporär angelegt, dh bis die for-Schleife zu Ende geht // i = 0 gibt an bei welchem Wert die Schleife beginnt // i < MAX gibt an bei welchem Wert die Schleife endet // i++ entspricht i = i + 1 dh bei jedem fertigen Durchlauf wird i um 1 erhöht { //hier irgendwas tun ^^ }
zu 5.: Das habe ich schon mal erklärt, hattest du dass da nicht verstanden?
zu 6.: Hoffe du hasts auch verstanden
MfG Nadriel
-
28.07.10 13:18 #36headhuner Tutorials.de Gastzugang
Moin,
über Arrays hab ich mich bereits informiert, doch die [] Klammern vergessen und etc. Ich schau mirs einfach nochma an
.
zu 5., ich hatte bemerkt das du mir das bereits erklärt hattest, als ich den Thread nochmal durchgegangen bin, mein fehler
Mit dem i++ und etc. hab ich nun verstanden, danke
zu 6. Joa hab ich inzwischen auch verstanden
Jedoch besteht das Problem immer noch. Anscheinend wird diese Funktion nicht behandelt, wenn ich mich nicht irren sollte.
Ist keine Leere Zeile an dem Textdokument vorhanden, so funktioniert alles einwandfrei. Ist die leere Zeile vorhanden, so kommt die Fehlermeldung
.
Nur wo der Haken an der Sache ist, lässt mich vor einem Rätsel stehen.
Achja, ich hab mal die && Zeichen zu einem + gemacht, dann hat es nicht geklappt, und bei einem & hat es keine Probleme gegeben, jedoch das Ergebnis war gleich.
gruß
headhunter
-
28.07.10 15:35 #37
- Registriert seit
- Jul 2010
- Ort
- Villach (Kärnten)
- Beiträge
- 33
-
29.07.10 09:34 #38headhuner Tutorials.de Gastzugang
Moin,
jo werd ich machen
Das Ergebnis war zwa es gleiche aber ma schauen xD
ps:
Code :1
( i < max -1))
Wird anscheinend nicht behandelt oder funktioniert nicht so wie es funktionieren soll, weil das Problem besteht immer noch
Naja ich hab mir ne Sicherheitskopie gemacht und spiel an der ma en bisschen rum, vllt. schaff ichs ja aus glück das Problem zu beheben xD
Oder hast du vllt. noch ne Idee? :o
Gruß
headhuner
-
Es gibt wohl 2 Möglichkeiten:
1.) Du schaust dir das ganze mal im Debugger an und gehst das Schritt für Schritt durch
2.) Du postest den gesamten Code und ein netter Mensch aus dem Forum geht das ganze durch
Gruß,
baddayGalaxy under Fire - 24/7 Online-Real-Time-Strategy-Game - servers are already running - Wir suchen einen Texturier für 3D-Modelle (bei Interesse einfach PM ;) )
-
04.08.10 01:59 #40headhuner Tutorials.de Gastzugang
Ich registriere mich nachher.
Dann kommt der quellcode hier rein
dann gehe ich debugger gleichzeitig durch.
gruß
-
20.10.10 10:57 #41
- Registriert seit
- Jul 2010
- Beiträge
- 41
So..
Nach langer zeit rufe ich das thema doch mal wieder auf.. :o
Ich werde in den nächsten tagen meinen alten quellcode (den ich mal wieder herausgekramt habe) hier posten und ich hoffe ihr könnt mir dabei helfen mein problem endlich zu finden..
Also ich werd den code auf jedenfall diese Woche noch posten
mfg
HeaDHunteR
Ähnliche Themen
-
Quellcode-Datei aufteilen?
Von SabineenibaS im Forum VisualStudio & MFCAntworten: 3Letzter Beitrag: 19.10.05, 08:11 -
Aus *.java-Datei eine *.class Datei machen!
Von Unlimited im Forum JavaAntworten: 4Letzter Beitrag: 23.06.05, 11:19 -
mit Exe Datei verknüpfen
Von vbanfaenger im Forum Visual Basic 6.0Antworten: 7Letzter Beitrag: 29.06.04, 18:20 -
2 class dateien verknüpfen
Von Schatti im Forum JavaAntworten: 4Letzter Beitrag: 14.10.03, 15:02 -
Datei mit CON CON Verknüpfen
Von foxx21 im Forum Office-AnwendungenAntworten: 0Letzter Beitrag: 07.01.02, 10:01






Zitieren
Login





