![]() |
Delphi-Version: 7
Eingaben individuell abspeichern
Hallo :)
Ich hab eine frage .... Kann man Eingaben individuell abspeichern sodass diese unterschiedschiedliche Namen haben. Mein jetztiger Quellcode: procedure TForm1.Button1Click(Sender: TObject); begin list:=TStringlist.Create; try List.add(Edit1.Text); list.SaveToFile('C:\Users\Maxi\Desktop\Neuer Ordner\(Eingabe1.text).txt'); finally list.Free; danke im voraus :) |
AW: Eingaben individuell abspeichern
Geht es um mehrere Edits? Hier würde sich eine Ini oder XML-Datei anbieten, in der alles geschrieben wird.
|
AW: Eingaben individuell abspeichern
okey und wie funktionier das ?
|
AW: Eingaben individuell abspeichern
|
AW: Eingaben individuell abspeichern
Zitat:
Delphi-Quellcode:
list.SaveToFile('C:\Users\Maxi\Desktop\Neuer Ordner\'+Eingabe1.text+'.txt');
Allerdings würde ich dafür lieber einen SaveDialog nehmen. |
AW: Eingaben individuell abspeichern
Der letzte tipp kann ja nicht funktionieren,da ja im Befehl insegsammt vier Anführungszeichen stehen und Delphi smit ja "+eingabe1.text+" aus dem befehl rausnimmmt:(:?
|
AW: Eingaben individuell abspeichern
Nee. Wenn im Edit-Feld 'Eingabe1' z.B. der Text 'EinDateiname' steht, dann macht Delphi daraus
Delphi-Quellcode:
Weiß aber gar nicht, ob Du das so willst.
list.SaveToFile('C:\Users\Maxi\Desktop\Neuer Ordner\'+Eingabe1.text+'.txt');
..==> list.SaveToFile('C:\Users\Maxi\Desktop\Neuer Ordner\EinDateiname.txt'); Beschäftige dich mal mit INI-Dateien. Das nimmt man für sowas. |
AW: Eingaben individuell abspeichern
also was ich wirklich möchte ist, dass er ein datei dokument mit dem entsprechenden text abspeichert.das habe ich ja auch schon geschafft. was ich nun noch will ist das der Name des textdokuments dem entspricht was drinne steht. Z.B : Einagbe : hallo .Die text datei soll jetzt hallo heißen und in der textdatei steht auch hallo drin .
|
AW: Eingaben individuell abspeichern
Na, die nötigen Hinweise hast Du ja jetzt.
|
AW: Eingaben individuell abspeichern
wirklich ? :D denn bin ich zu doof für delphi :0 :D
|
AW: Eingaben individuell abspeichern
Zitat:
|
AW: Eingaben individuell abspeichern
Zitat:
|
AW: Eingaben individuell abspeichern
Zitat:
Gruß :-D Michael |
AW: Eingaben individuell abspeichern
ja, ich hab das in den verschiedensten varianten probiert ...von '' bis "" ....funktioniert alles nicht
|
AW: Eingaben individuell abspeichern
Was ist an
Delphi-Quellcode:
denn so unverständlich?
list.SaveToFile('C:\Users\Maxi\Desktop\Neuer Ordner\'+Eingabe1.text+'.txt');
Ersetz Eingabe1.text durch den gewünschten Namen (z.B. 'MeineDatei.txt') und gut ist. Gruß K-H |
AW: Eingaben individuell abspeichern
Einfache Hochkommata (SHIFT + Raute) auch? Ansonsten kannst Du das auch mit Format lösen.
Delphi-Quellcode:
Dateiname := Format('C:\Users\Maxi\Desktop\Neuer Ordner\%s.txt', [Eingabe.Text]);
|
AW: Eingaben individuell abspeichern
Hallo nochmal
lieber K-H...du hast nicht verstanden was ich möchte...ich will die Dateinnamen individuell haben... Wenn ich: Dateiname := Format('C:\Users\Maxi\Desktop\Neuer Ordner\%s.txt', [Eingabe.Text]);[/DELPHI][/QUOTE] eingebe ,sagt er mir folgendes: [Fehler] Unit1.pas(40): Inkompatible Typen: 'TStrings' und 'String' ich glaub ich muss mich von meinem vorhaben verabschieden,was ?:0 |
AW: Eingaben individuell abspeichern
Vielleicht postest Du mal den gesamten relevanten Code. Wo hast Du denn da eine TStrings-Instanz?
|
AW: Eingaben individuell abspeichern
ich stelle einfach mal alles rein...
unit Unit1; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls, CheckLst; type TForm1 = class(TForm) Button1: TButton; Edit1: TEdit; Memo1: TMemo; Label1: TLabel; Edit2: TEdit; Button2: TButton; procedure Button1Click(Sender: TObject); private { Private-Deklarationen } public { Public-Deklarationen } end; var Form1: TForm1; Eingabe1,List,Dateiname:TStrings; implementation {$R *.dfm} procedure TForm1.Button1Click(Sender: TObject); begin list:=TStringlist.Create; try List.add(Edit1.Text); list.SaveToFile('C:\Users\Maxi\Desktop\Neuer Ordner\Datei.txt'); finally list.Free; Dateiname := Format('C:\Users\Maxi\Desktop\Neuer Ordner\%s.txt', [Eingabe1.Text]); end; end; end. |
AW: Eingaben individuell abspeichern
Weshalb ist Dateiname vom Typ TStrings, und wieso erstellst Du keine Instanzen von Dateiname und Eingabe1?
[edit] P.S.: Benutze doch bitte die Delphi-Tags (die "Helm"-Schaltfläche im Beitragseditor), dann kann man den Code auch besser lesen. [/edit] |
AW: Eingaben individuell abspeichern
wie würde man das ganze denn ändern ? ich bin anfänger und bringe mir vieles selbst irgendwie bei :0
|
AW: Eingaben individuell abspeichern
Delphi-Quellcode:
procedure TForm1.Button1Click(Sender: TObject);
var List: TStringlist; Dateiname: string; begin List := TStringlist.Create; try List.Add(Edit1.Text); Dateiname := Format('C:\Users\Maxi\Desktop\Neuer Ordner\%s.txt', [Edit1.Text]); List.SaveToFile(Dateiname); finally list.Free; end; end; |
AW: Eingaben individuell abspeichern
Danke Danke Danke Danke !! :))
|
AW: Eingaben individuell abspeichern
Jetzt müsste aber doch auch die andere Variante funtionieren. Dann sparst du dier auch noch die Variable Dateiname.
Was mir allerdings immer noch nicht klar ist: In welches Edit gibts du den gewünschten Dateinamen ein? Ist das das Edit2? Dieses Edit muss natürlich auch in dem Parameter von SaveToFile erscheinen. Deswegen nimmt man besser aussagekräftigere Bezeichner, z.B. EditWert und EditDateiname statt Edit1 und Edit2. In Deinem Quellcode stand da ein Eingabe1 von Typ TStings. Hättest du das wirklich so gewollt, dann hättest du dafür sorgen müssen, dass eine Instanz von Eingabe1 erzeugt wird, diese dann mir dem Wert aus Edit2 befüllt und nach der ganzen Aktion wieder entfernt, aber das wäre Blödsinn, wenn man das mit einem Einzeiler lösen kann. Wahrscheinlich hast du sowas gemeint:
Delphi-Quellcode:
procedure TForm1.Button1Click(Sender: TObject);
var List: TStringlist; begin List := TStringlist.Create; try List.Add(Edit1.Text); List.SaveToFile('C:\Users\Maxi\Desktop\Neuer Ordner\'+Edit2.text+'.txt'); finally list.Free; end; end; |
AW: Eingaben individuell abspeichern
Laut
![]() |
AW: Eingaben individuell abspeichern
Stimmt, das hatte ich nicht mehr im Kopf. Dann eben zweimal Edit1.
|
AW: Eingaben individuell abspeichern
Also mein Ziel war es, dass man namen ins Editfeld schreiben kann(Edit1:Vorname,Edit2:nachname) und der die denn auch mit dem eingegeben namen abspeichert...und das klappt super !
jetzt arbeite ich an einem weg, dass man auch nach beendigen des programmes die eingebenen Namen aufrufen kann. (Natürlich samt sämtlichen anderen Eingaben (Alter und Geschlecht)) |
AW: Eingaben individuell abspeichern
Da stellt sich mir gleich die nächste Frage...
Delphi-Quellcode:
Das ist jetzt mein quellcode, mit allem was ich bissher ereichen wollte...
var
Form1: TForm1; List1: TStringlist; List2: TStringlist; List3: TStringlist; Dateiname: string; ComboBox1:integer; ComboBox2:string; Combobox3:String; implementation {$R *.dfm} procedure TForm1.Button1Click(Sender: TObject); begin List1 := TStringlist.Create; try List1.Add(Edit1.Text); List1.Add(Edit2.Text); Dateiname := Format('C:\Users\Maxi\Desktop\Dateinmanager\%s.txt', [Edit1.Text+Edit2.Text]); List1.SaveToFile(Dateiname); finally list1.Free; List2 := TStringlist.Create; try List2.Add(ComboBox1.Text); list2.add(ComboBox2.text); Dateiname := Format('C:\Users\Maxi\Desktop\Dateinmanager\%s.txt', [Edit1.Text+Edit2.Text]); List2.SaveToFile(Dateiname); finally list2.Free; ComboBox3.Items.Add(Edit1.Text+edit2.Text); end; end; end; procedure TForm1.Button2Click(Sender: TObject); begin List3 := TStringlist.Create; try List3.Add(ComboBox3.Text); Dateiname := Format('C:\Users\Maxi\Desktop\Dateinmanager\Oeffnen\%s.txt', [ComboBox3.Text]); List3.SaveToFile(Dateiname); finally list3.Free; end; end; procedure TForm1.Button3Click(Sender: TObject); begin if OpenDialog1.Execute then Combobox3.Items.LoadFromFile('C:\Users\Maxi\Desktop\Dateinmanager'); end; end. Nun möchte ich per Buttonclick die gespeicherten Daten (bzw erst Namen) in eine Combobox verfrachten...dort möchte ich Einen Namen auswählen können und denn die Infos zu dem Namen in die entsprechenden eingabefelder drinne stehen haben....geht das und wenn ja,wie ? ich entschuldige mich wirklich für meine hundert fragen...aber wir hatten das in der schule informatik und mich hat das so fastziniert dass ich mir delphi von meiner lehrerin gegeben haben lassen ,um zuhause an eigene projekte zu arbeiten... für diese ,mir schon eretielte,Unterstützung sage ich schonmal danke ! |
AW: Eingaben individuell abspeichern
Da würde sich aber wirklich eine Datenbank oder ähnliche Lösung anbieten ( XML, Ini, Textfile o.ä).
Sonst müsstest du ja das Verzeichnis nach Textdateien durchsuchen, um die Informationen daraus zu ermittlen. Zudem würde ich keine Daten als "Schlüssel" verwenden ( Name = Schlüssel = Dateiname). |
AW: Eingaben individuell abspeichern
jaa aber ich will ja sowas wirklich selbst erstellen....
(Siehe #28) |
AW: Eingaben individuell abspeichern
Mach Dir doch erst einmal über die zusammengehörigen Daten. Es macht ja keinen Sinn, die Namen in einer Datei, die Adressen dazu einer anderen und sonstige Daten wieder in einer anderen zu speichern (es sei denn, man will eine eigene "echte" Datenbank schreiben, in der die Daten über Schlüssel miteinander verknüpft sind). Du könntest z.B. einen Record definieren mit allem, was Du an zusammengehörigem Zeugs brauchst, das wäre zumindest schon mal ein Anfang. Gespeichert wird das dann auch in einem zusammenhängenden Format (Ini, XML, typisierte Datei oder was auch immer).
|
AW: Eingaben individuell abspeichern
ich speicher ja schon sämtliche daten in einer Datei ab
|
AW: Eingaben individuell abspeichern
Jetzt habe ich das so gemacht...
Delphi-Quellcode:
denn sagt er mir immer: Zugriff verweigert ect.
ComboBox3.Items.LoadFromFile('C:\Users\Maxi\Desktop\Dateinmanager');
|
AW: Eingaben individuell abspeichern
Zitat:
MfG Dalai |
AW: Eingaben individuell abspeichern
Wie muss denn der Quellcode sein damit er alle Dateien aus einem Ordner nimmt ?
|
AW: Eingaben individuell abspeichern
Such mal nach FindFirstFile und FindNextFile, dann findest du auch hier in der DP genügend Beispiele, wie man eine Liste von Dateien in einem Verzeichnis (ggf. sogar rekursiv, also inkl. Unterverzeichnisse) erstellt. Diese Liste kannst du dann z.B. mit einer for-Schleife (oder auch einer while-Schleife) durchlaufen.
MfG Dalai |
AW: Eingaben individuell abspeichern
Die befehle zeigt er aber bei delphi nicht an :0
|
AW: Eingaben individuell abspeichern
Hiermit geht es etwas bequemer:
![]() |
AW: Eingaben individuell abspeichern
jetzt verstehe ich garnix mehr....
|
AW: Eingaben individuell abspeichern
Und nun?
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 01:57 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz