Autor Beitrag
Dhakiyah Threadstarter
ontopic starontopic starontopic starontopic starontopic starofftopic starofftopic starofftopic star
Beiträge: 327
Erhaltene Danke: 5

Windows 7
Delphi XE2
BeitragVerfasst: Mo 29.09.08 09:28 
Titel: Hallo...
Ja, es sind Tabs... Und nu?

Gruß

_________________
Es ist soooo flauschig !!!
DeddyH
Ehemaliges Mitglied
Erhaltene Danke: 1



BeitragVerfasst: Mo 29.09.08 09:32 
ausblenden Delphi-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
procedure TForm1.Button1Click(Sender: TObject);
var Datei: TStringList;
    i: Integer;
    Zeile: string;
begin
  Datei := TStringList.Create;
  try
    Datei.LoadFromFile(ExtractFilePath(ParamStr(0))+ 'name.txt');
    for i := 0 to Datei.Count - 1 do
      begin
        Zeile := StringReplace(trim(Datei[i]),#9,'.',[rfReplaceAll]); //Tabs ersetzen
        Datei[i] := Zeile + '@email.de';
      end;
    Datei.SaveToFile(ExtractFilePath(ParamStr(0)) + 'name2.txt');
  finally
    Datei.Free;
  end;
end;


Oder nimm Dir eine der anderen geposteten Lösungen und ersetze dort ' ' durch #9 ;)
bf109g.01
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 84



BeitragVerfasst: Mi 01.10.08 10:27 
Titel: Fehlermeldung beim (mehrfachen) Abspeichern.
hallo, hab ein thematisch sehr ähnliches Problem, von daher schreibe ich das mal hier dazu. Sry, wenns fehl am Platz ist, dann bitte verschieben... :?

Ich würde gern eine Datei (.txt / .log / ...) laden (Memo), ändern (manual) und abspeichern (Ursprungsdatei).
Damit die Datei beliebig sein kann und nicht nur eine bestimmte, benutze ich eine 'TOpenDialog'-Funktion.
Dann soll die Datei abgespeichert werden.

ausblenden Delphi-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
var
  F: TF;
  dateiname: string;
implementation

{$R *.dfm}

// Laden einer externen .txt-datei + Einfügen in Memo
procedure TF.BloadClick(Sender: TObject);
begin
if OD1.Execute then M.Lines.LoadFromFile(OD1.FileName);
dateiname:= od1.FileName;
{showmessage(dateiname) (Kontrolle)};
end;

// Abspeichern der Änderungen
procedure TF.BsaveClick(Sender: TObject);
begin
  M.Lines.SaveToFile(dateiname);
  M.Lines.Free;  // Was heißt das??? 
end;

end.


Das Abspeichern funktioniert, aber nur 1 Mal.
Wenn ich danach wieder auf Speichern klicke, bekomme ich folgende Meldung:

Zitat:
Exception EInvalidPointer in Modul Project1.exe bei 00003821
Ungültige Zeigeroption


Habe keine Ahnung, was das bedeuten soll. Wo kommt das her? Wie krieg ich's weg?

Fürs mehrfache Laden gilt übrigens das selbe: 1-2 Mal lade ich eine neue Datei rein, nachdem ich die erste gespeichert habe und ich kriege wieder fehlermeldungen und es läuft nix mehr.

Vielen Dank schon mal.
DeddyH
Ehemaliges Mitglied
Erhaltene Danke: 1



BeitragVerfasst: Mi 01.10.08 10:48 
ausblenden Delphi-Quelltext
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:
var
  F: TF;
  dateiname: string;
implementation

{$R *.dfm}

// Laden einer externen .txt-datei + Einfügen in Memo
procedure TF.BloadClick(Sender: TObject);
begin
  if OD1.Execute then 
    begin //<--
      M.Lines.LoadFromFile(OD1.FileName);
      dateiname:= od1.FileName;
    end//<--
{showmessage(dateiname) (Kontrolle)};
end;

// Abspeichern der Änderungen
procedure TF.BsaveClick(Sender: TObject);
begin
  M.Lines.SaveToFile(dateiname);
  M.Lines.Clear;  // So sollte es wohl heißen 
end;

end.