![]() |
Text wird im Textdokument in der falschen Form gespeichert
Seas,
ich habe ein Programm geschrieben dass Passwörter abspeichern soll dieses System benutze ich um AllPW (listbox mit Passwörtern) und PWInfoData (Array of Array of String) abzuspeichern
Delphi-Quellcode:
Eigentlich sollte das dann so ausgegeben werden (im Dokument):
var
i:integer; k: integer; Temp1,Temp2,line:String; begin AssignFile(Haupt.Data,ExtractFilePath(Application.ExeName)+'PWDATA.PW'); rewrite(Data); i:=0; k:=0; repeat WriteLn(Haupt.Data,Code(AllPW.Items[i],CodeFak)); repeat WriteLn(Haupt.Data,Code('ÿ'+PWInfoData[i][k],CodeFak)); k:=k+1; until PWInfoData[i][k]=''; i:=i+1; until i>=AllPW.items.Count-1; closeFile(Haupt.Data); Passwort1 ÿInfo1 ÿInfo2 ÿInfo3 Passwort2 ÿInfo1 ÿInfo2 ... aber es wird eher so ausgegeben Passwort1 Passwort1ÿInfo1 Passwort1ÿInfo1ÿInfo2 .. usw. was muss ich ändern damit das funkt? Zitat:
|
Re: Text wird im Textdokument in der falschen Form gespeiche
Deinen Einträgen fehlen die Zeilenumbrüche. Writeln kann die nur bei reinen Textdateien (var File : Text;) automatisch schreiben. Hast Du das genau so deklariert? Wenn nicht, schreibst Du eine binäre Datei, dann musst du die Zeilenumbrüche ($0D$0A) jedesmal gesondert an Deinen String anhängen.
Übrigens wäre es hilfreich, wenn Du Deinen Quelltext durch sinnvolles Einrücken etwas übersichtlicher machen würdest:
Delphi-Quellcode:
Grüße, Messie
var
i:integer; k: integer; Temp1,Temp2,line:String; begin AssignFile(Haupt.Data,ExtractFilePath(Application.ExeName)+'PWDATA.PW'); rewrite(Data); i:=0; k:=0; repeat WriteLn(Haupt.Data,Code(AllPW.Items[i],CodeFak)); repeat WriteLn(Haupt.Data,Code('ÿ'+PWInfoData[i][k],CodeFak)); k:=k+1; until PWInfoData[i][k]=''; i:=i+1; until i>=AllPW.items.Count-1; closeFile(Haupt.Data); end; |
Re: Text wird im Textdokument in der falschen Form gespeiche
also meine Datei ist eine Textfile und ich schreibe auch schon vorher was in die datei und da funktionierts... hat das vll was mit der schleife zu tun? und wie wende ich dieses $0D$0A an??
|
Re: Text wird im Textdokument in der falschen Form gespeiche
Zitat:
Zitat:
Delphi-Quellcode:
[OT]Schieb mal Dein Hauptmenü nach links aus dem Bildschirm und mach es dann breiter. Da könntest Du Deine Komponentenpalette wiederfinden. Jedenfalls habe ich die auch aus dem Bild schieben können und so wieder zurückgeholt[/OT]
WriteLn(Haupt.Data,Code('ÿ'+PWInfoData[i][k],CodeFak)+#10+#13);
Grüße, Messie |
Re: Text wird im Textdokument in der falschen Form gespeiche
Zitat:
Hmm zu meinem wahren Problem^^ also irgendwie hat das keinen Umbruch verursacht der hat das glaub ich als string nun hinzugefügt oder so?!
Delphi-Quellcode:
repeat
WriteLn(Haupt.Data,Code(AllPW.Items[i],CodeFak)+#10+#13); repeat WriteLn(Haupt.Data,Code('ÿ'+PWInfoData[i][k],CodeFak)+#10+#13); k:=k+1; |
Re: Text wird im Textdokument in der falschen Form gespeiche
das liegt an Deiner function Code ,die liefert Schrott zurück
|
Re: Text wird im Textdokument in der falschen Form gespeiche
Zitat:
Delphi-Quellcode:
lauten. Ich hab' es noch nie probiert, ob die Übergabe in einzelnen Klammern funzt, ist aber nicht üblich.
WriteLn(Haupt.Data,Code('ÿ'+ ->PWInfoData[i,k]<- ,CodeFak)+#10+#13);
Grüße, Messie |
Re: Text wird im Textdokument in der falschen Form gespeiche
Das liegt doch nur daran, das der Ausgabestring der Function, oder ein String in der Codierfunktion nicht gelöscht wird,
sondern noch den Wert des vorherigen Aufrufes enthält. //edit Es liegt vermutlich nicht an dem Aufruf von Code(... sondern drinnen in deiner geheimnissvollen Funktion Code, es sei denn die Parameter würden schon vor der Übergabe an Code nicht stimmen. |
Re: Text wird im Textdokument in der falschen Form gespeiche
hmm ich weiß jetzt selbst nicht woran es lag, ich hab jetzt ein bisschen rumprobiert (an "Code" lag es nicht weil da wurde immer der String reseted) z.b. war "Code" vorher auf repeat basis und jetzt auf for basis usw. viele kleinigkeiten... jetzt geht eigentlich alles bloß gibt es noch ein problem dass für das zweite passwort nicht alle infos gespeichert werden...
achja das mit der [][] Klammer geht scheinbar ich habs ausversehen so geschrieben und es funzt^^ |
Re: Text wird im Textdokument in der falschen Form gespeiche
Gibts noch ideen?^^
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 08:28 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