Top-Themen

Aktuelle Themen (A bis Z)

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit

gelöst Small Basic Daten Speichern

Mitglied: bahnhof

bahnhof (Level 1) - Jetzt verbinden

31.03.2012, aktualisiert 22:34 Uhr, 5930 Aufrufe, 8 Kommentare

Hallo,
Ich versuch mich gerade in Small Basic einzuarbeiten. Dort möchte ich Ein Kleines Programm schreiben in dem Die Nutzer etwas eintragen müssen. Das habe ich auch schon geschaft. Ich möchte aber gerne dass, das Programm die Daten in eine Textdatei speichern und danach das Programm neu startet und der Nächste soll etwas eintragen so möchte ich sehr schnell bestimmte Daten sammeln.
Nun finde ich nicht den Befehl der die Daten in einer Datei speichert. Und auch nicht dass, das Programm danach neu startet.
Da das Programm jedem Nutzer einen Nutzernamn erstellen soll wer as schön wenn es einen Befehl gäber (muss aber nicht sein) der automatisch den ganzen Vornamen kleinschreibt und ä,ö oder ü in ae,oe oder ue umwandelt. Und dann den Ersten Buchstaben das Nachnamen hinten einfügt.
Das aller beste wer jetzt noch wenn es einen Befehl gäbe der jetzt auch nch in den schon entstandenen Daten schaut ob jemand dort schon diesen Benutzenamen hatt und falls dieses so ist soll der Zweite Buchstabe des Nachnamens dazukommen und immer so weiter. Vielleicht kann das Programm ja auch noch sagen ob der Vor und Nachname schon so in der Datei existiert.
Würde mich über eine Antwort freuen
Mit freunlichen Grüßen
bahnhof
Mitglied: bastla
31.03.2012 um 20:54 Uhr
Hallo bahnhof!

Ich kenne "Small Basic" zwar leider nicht, aber was so auf die Schnelle der Doku zu entnehmen war:
  • An bestehende Datei anfügen: File.AppendContents(filePath, contents)
  • Gesamten Dateiinhalt einlesen: File.ReadContents(filePath)
  • Prüfen, ob ein Text einen anderen Text enthält: Text.IsSubText(text, subText)
  • Text in Kleinbuchstaben umwandeln: Text.ConvertToLowerCase(text)
  • Einzelne Zeichen eines Textes entnehmen: Text.GetSubText(text, start, length)

Für das Ersetzen eines Textes (Umaute) könnte die Extended Text Library helfen ...

Grüße
bastla
Bitte warten ..
Mitglied: bahnhof
31.03.2012 um 21:15 Uhr
Ich habe das gerade ausprobiert und ich glaube das das nicht klappt.
Oder soll ich mal die Par Zeilen die ich bisher programmiert habe posten und du sagst mir dann wo ich das da einfügen soll?
Bitte warten ..
Mitglied: bastla
31.03.2012 um 21:23 Uhr
Hallo bahnhof!
ich glaube das das nicht klappt.
Programmierung ist sicherlich keine Glaubensfrage ...

... also solltest Du schon wissen, was klappt und was nicht (und daher vielleicht sogar eine Fehlermeldung, die weiterhelfen könnte, bringt).
soll ich mal die Par Zeilen die ich bisher programmiert habe posten
Kann ja nicht schaden ...

... da ich allerdings, wie erwähnt, "Small Basic" nicht kenne, kann ich bestenfalls Tipps geben ...

Grüße
bastla
Bitte warten ..
Mitglied: bahnhof
31.03.2012 um 21:50 Uhr
01.
start: 
02.
i = 1  
03.
TextWindow.WriteLine("Sicherheitsfrage: Bitte gebe eine von diesen Zahlen ein") 
04.
q: 
05.
TextWindow.WriteLine(i) 
06.
i = i + 1  
07.
If (i < 9) Then  
08.
  Goto q 
09.
EndIf 
10.
TextWindow.WriteLine(" " + i + " ") 
11.
Zahl = TextWindow.ReadNumber() 
12.
If (Zahl < 9) Then 
13.
  TextWindow.WriteLine("a") 
14.
Else 
15.
  TextWindow.WriteLine("Diese Zahl war nicht aus der Liste")  
16.
  TextWindow.Clear() 
17.
  Goto start 
18.
EndIf 
19.
TextWindow.Clear() 
20.
TextWindow.Write("Wie viel ist (3 + " + Zahl + ")*5 ?") 
21.
Antwort = TextWindow.ReadNumber() 
22.
TextWindow.Clear() 
23.
If (Antwort = (Zahl+3)*5) Then 
24.
  TextWindow.WriteLine("Diese Antwort ist richtig.Nun können Sie anfangen") 
25.
  TextWindow.WriteLine("Um weiter zu kommen müssen Sie die Eingabetaste betätigen") 
26.
  TextWindow.Read() 
27.
Else 
28.
  TextWindow.WriteLine("Versuchen Sie es bitte noch einmal")  
29.
  TextWindow.Clear() 
30.
  Goto start 
31.
EndIf 
32.
TextWindow.Clear() 
33.
TextWindow.Write("Ihr Vorname komplet kleingeschrieben und ohne ä,ö oder ü diese bitte durch ae,oe oder ue ersetzen. ") 
34.
Vorname = TextWindow.Read() 
35.
Text.ConvertToLowerCase(Vorname) 
36.
TextWindow.Write("Ihr Nachname ") 
37.
Nachname = TextWindow.Read() 
38.
TextWindow.Write("Ihr Gewünschtes Passwort ") 
39.
Passwort = TextWindow.Read() 
40.
TextWindow.Clear() 
41.
TextWindow.WriteLine("Vielen Dank " + Vorname + " " + Nachname +  " ") 
42.
TextWindow.WriteLine("Ihr Passwort wurde gesetz und ist wahrscheinlich ab anfang nächster Woche feigeschaltet.") 
43.
TextWindow.WriteLine("Ihr Anmeldename ist.") 
44.
TextWindow.WriteLine("Bitte drücken Sie die Eingabetaste damit der nächste Nutzer seine Daten eingeben kann.") 
45.
TextWindow.Read() 
46.
TextWindow.Clear() 
47.
Goto start
Hier vielleicht kannst du mir Sagen Was ich da machen muss. Ich möcht das hinter "Ihr Anmeldename" der Vorname der Person steht und ein Buchstabe des Nachnamens. Das soll da aber alles klein stehen und ohne ä,ö,ü. Und falls sich ein Zweiter anmeldet der Vorname und den ersten Buchstaben des Nachnemen Identisch hatt soll er 2 Buchstaben eingeben und immer so weiter. Und wenn es der Gleiche Name ist soll dort stehen das diese Person schon angemeldet ist.
Und es sollen halt die Daten die Dort eingegeben werden in einer Textdatei zumbeispiel auf dem Desktop gespeichert werden damit ich dann einmal in der Woche die Textdatei öffnen kann und Den Personen neue Benutzerakounts erstellen kann.

Danke für deine bemühungen
Mit freundlichen Grüßen
bahnhof

[Edit Biber] Codeformatierung. Aber die Textformatierung mach ich nicht. [/Edit]
Bitte warten ..
Mitglied: bastla
01.04.2012 um 23:28 Uhr
Hallo bahnhof!

Völlig ungetestet könnte das etwa so aussehen:
01.
Datei = "D:\Anmeldungen.txt" 
02.
Delim = ";" 
03.
 
04.
start: 
05.
TextWindow.WriteLine("Sicherheitsfrage: Bitte gebe eine von diesen Zahlen ein:") 
06.
For i = 1 To 9 
07.
    TextWindow.WriteLine(i) 
08.
EndFor 
09.
TextWindow.WriteLine(" " + i + " ") 
10.
Zahl = TextWindow.ReadNumber() 
11.
If (Zahl < 9) Then 
12.
    TextWindow.WriteLine("a") 
13.
Else 
14.
    TextWindow.WriteLine("Diese Zahl war nicht aus der Liste") 
15.
    TextWindow.Clear() 
16.
    Goto start 
17.
EndIf 
18.
 
19.
TextWindow.Clear() 
20.
TextWindow.Write("Wie viel ist (3 + " + Zahl + ")*5 ?") 
21.
Antwort = TextWindow.ReadNumber() 
22.
TextWindow.Clear() 
23.
If (Antwort = (Zahl+3)*5) Then 
24.
    TextWindow.WriteLine("Diese Antwort ist richtig.Nun können Sie anfangen") 
25.
    TextWindow.WriteLine("Um weiter zu kommen müssen Sie die Eingabetaste betätigen") 
26.
    TextWindow.Read() 
27.
Else 
28.
    TextWindow.WriteLine("Versuchen Sie es bitte noch einmal") 
29.
    TextWindow.Clear() 
30.
    Goto start 
31.
EndIf 
32.
 
33.
TextWindow.Clear() 
34.
TextWindow.Write("Ihr Vorname komplett kleingeschrieben und ohne ä,ö oder ü - diese bitte durch ae,oe oder ue ersetzen. ") 
35.
Vorname = TextWindow.Read() 
36.
TextWindow.Write("Ihr Nachname ") 
37.
Nachname = TextWindow.Read() 
38.
TextWindow.Write("Ihr Gewünschtes Passwort ") 
39.
Passwort = TextWindow.Read() 
40.
TextWindow.Clear() 
41.
 
42.
VornameKlein = Text.ConvertToLowerCase(Vorname) 
43.
NachnameKlein = Text.ConvertToLowerCase(Nachname) 
44.
NachnameKurz = Text.GetSubText(NachnameKlein, 1, 1) 
45.
 
46.
Benutzername = VornameKlein + NachnameKurz 
47.
Daten = File.ReadContents(Datei) 
48.
 
49.
If Text.IsSubText(Daten, Delim + VornameKlein + Delim + NachnameKlein) Then 
50.
    TextWindow.WriteLine("Sie sind bereits angemeldet!") 
51.
    TextWindow.Read() 
52.
    TextWindow.Clear() 
53.
    Goto start	 
54.
EndIf 
55.
 
56.
i = 2 
57.
L = Text.GetLength(NachnameKlein) 
58.
While (Text.IsSubText(Daten, VornameKlein + NachnameKurz + Delim) And (i <= L)) 
59.
    NachnameKurz = NachnameKurz + Text.GetSubText(NachnameKlein, i, 1) 
60.
    i = i + 1 
61.
EndWhile 
62.
If (i > L + 1) Then 
63.
    TextWindow.WriteLine("Benutzername bereits vorhanden!") 
64.
    TextWindow.Read() 
65.
    TextWindow.Clear() 
66.
    Goto start	 
67.
EndIf 
68.
 
69.
Anmeldename = VornameKlein + NachnameKurz 
70.
 
71.
File.AppendContents(Datei, Anmeldename + Delim + Passwort + Delim + VornameKlein + Delim + NachnameKlein) 
72.
 
73.
TextWindow.WriteLine("Vielen Dank " + Vorname + " " + Nachname + " ") 
74.
TextWindow.WriteLine("Ihr Passwort wurde gesetzt und ist wahrscheinlich ab Anfang nächster Woche freigeschaltet.") 
75.
TextWindow.WriteLine("Ihr Anmeldename ist: " + Anmeldename) 
76.
TextWindow.WriteLine("Bitte drücken Sie die Eingabetaste, damit der nächste Nutzer seine Daten eingeben kann.") 
77.
TextWindow.Read() 
78.
TextWindow.Clear() 
79.
Goto start
Grüße
bastla
Bitte warten ..
Mitglied: bahnhof
02.04.2012 um 17:04 Uhr
Vielen Dank.
Das funktioniert
Mit freundlichen Grüßen
bahnhof
Bitte warten ..
Mitglied: bastla
02.04.2012 um 19:10 Uhr
Hallo bahnhof!

Das ist schön.

Optimierungspotenzial habe ich Dir aber natürlich noch gelassen - 2 Beispiele dafür:

Das öfters benötigte Ausgeben einer Meldung zB ließe sich bessesr per Unteprogramm ("Sub") erledigen - weiterhin ungetestet etwa:
01.
Sub Message 
02.
TextWindow.WriteLine(AusgabeText)  
03.
TextWindow.Read()  
04.
TextWindow.Clear() 
05.
EndSub
[Edit] Da offensichtlich keine Parameter an ein Unterprogramm übergeben werden können, müsste vor dem Aufruf bereits der Ausgabetext in die Variable "AusgabeText" geschrieben werden - die Ersparnis an Code durch die Verwendung des Unterprogramms hält sich dann natürlich in Grenzen, es ist aber leichter möglich, durch eine einzige Änderung alle Meldungen anders darstellen zu lassen (zB durch temporäre Änderung der Schriftfarbe, ...), sodass ich trotzdem den Einsatz eines "Sub" empfehlen würde. [/Edit]

Die "Anmeldungs"-Datei müsste eigentlich vor dem allerersten Durchlauf bereits existieren - auf die Schnelle habe ich keine passende Abfragemöglichkeit auf "FileExists()" gefunden, sodass als Workaround vielleicht ein
File.AppendContents(Datei, "")
für Sicherheit sorgen könnte (die Datei soll ja ohnehin erstellt werden) ...
Außerdem wäre noch zu überlegen, die beiden Zahlenwerte in Zeile 20 vorweg als Variablen mit Zufallszahlen zu befüllen - damit wird das Ganze weniger vorhersehbar ...

Grüße
bastla
Bitte warten ..
Mitglied: bahnhof
02.04.2012 um 19:38 Uhr
Hallo,
Bitte nehm es mir nicht übel aber ich habe mich übers Wochenende angefangen das Programm nocheinmal neuzuschreiben wa da aber nicht im Internet und das hatt jetzt mehr funktionen und ist fast vertig. Wenn mann Small Basic verstanden hatt ist das recht einfah.
Bitte warten ..
Ähnliche Inhalte
Microsoft Office

Speichern Office Daten auf Laufwerk nicht möglich

Frage von DaHuberMicrosoft Office5 Kommentare

Hallo zusammen, haben seit kurzen ein kurioses Problem. Office Daten Outlook oder Excel , Word usw, lassen sich im ...

Windows Server

Benutzervorgabe zum Speichern von Daten auf dem Terminal Server

gelöst Frage von aPeukiWindows Server5 Kommentare

Hallo, ich habe das Problem, dass es bei uns im Unternehmen Mitarbeiter gibt, die sich strikt nicht an die ...

Verschlüsselung & Zertifikate

Warum könen Nutzer keine Daten auf einem verschlüsselten, gemounteten Container über Netzwerk keine Daten speichern?

gelöst Frage von scritchVerschlüsselung & Zertifikate4 Kommentare

Hallo zusammen. Folgende Situation: Ich habe einen Server (A) auf dem Daten für Netzwerkuser bereitgestellt werden. Diese Daten werden ...

LAN, WAN, Wireless

Internet Daten Verbrauch bei Externen Cloud Speicher zum Austausch von Daten : Ja oder Nein

gelöst Frage von trendiendiLAN, WAN, Wireless3 Kommentare

Habe mir einen Externen Cloud Speicher mit LAN gekauft. wie beschrieben wurde er per Lan am Router angeschlossen. So ...

Neue Wissensbeiträge
Windows 10

Neue Sicherheitslücke in Windows 10 (Version 1709) durch Google öffentlich geworden

Information von kgborn vor 5 StundenWindows 10

Vor ein paar Tagen haben Googles Sicherheitsforscher vom Projekt Zero eine Sicherheitslücke im Edge-Browser publiziert. Jetzt wurde eine weitere ...

iOS
IOS 11.2.6 verfügbar
Information von sabines vor 10 StundeniOS

Mit dem Update soll der Bug behoben werden, bei dem eine bestimmte Zeichenkette IOS zum Absturz gebracht hat.

Sicherheit
Sicherheitsrisiko: Die Krux mit 7-Zip
Information von kgborn vor 1 TagSicherheit8 Kommentare

Bei vielen Anwendern ist das Tool 7-Zip zum Entpacken von Archivdateien im Einsatz. Die Software ist kostenlos und steht ...

Internet

Datendealing im WWW Tracking Methoden immer brutaler

Information von sabines vor 1 TagInternet

Interessanter Artikel zum Thema Tracking im WWW und die immer "besseren" Methoden des Trackings. Professor Arvind Narayanan (Princeton-Universität) betreibt ...

Heiß diskutierte Inhalte
Router & Routing
LANCOM VPN CLIENT einrichten
Frage von Finchen961988Router & Routing27 Kommentare

Hallo, ich habe ein Problem und hoffe ihr könnt mir helfen, wir haben einen Kunden der hat einen Speedport ...

Windows Server
AD DS findet Domäne nicht, behebbar?
Frage von schapitzWindows Server23 Kommentare

Guten Tag, ich habe bei einem Kunden ein Problem mit den AD DS. Umgebung ist folgende: Windows Server 2016 ...

LAN, WAN, Wireless
VPN Cisco ASA5505 PaloAlto PA-200
gelöst Frage von YannoschLAN, WAN, Wireless22 Kommentare

Hallo zusammen, ich würde gerne ein Site-to-Site VPN zwischen den beiden Standorten aufbauen. PaloAlto PA200 Internetanschluss Deutsche Telekom GK ...

Webbrowser
Welcher Browser ist der Beste?
Frage von justtinWebbrowser15 Kommentare

Hallo Leute Ich habe eine interessante Frage. Mich wurde mal interessieren welcher Browser ist eure meinung nach der beste? ...