AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Win32/Win64 API (native code) Delphi Text Datie mit Programm erstellen

Text Datie mit Programm erstellen

Ein Thema von Bassel · begonnen am 28. Jun 2007 · letzter Beitrag vom 28. Jun 2007
Antwort Antwort
Bassel

Registriert seit: 14. Aug 2006
Ort: Hannover
29 Beiträge
 
Delphi 7 Personal
 
#1

Text Datie mit Programm erstellen

  Alt 28. Jun 2007, 15:40
Hallo

ich möchte ein Programm schreiben, das eine Datei auf dem
Destop erstellt sie iwie bennent und iwas darein schreibt.
Ich hab diese noch nie gemacht, deshalb kenne ich keine Syntax
oder Vorgehensweise mit Dateiumgang. Kann mir jemand helfen???

Danke im vorraus


Bassel
1337 and have fun
  Mit Zitat antworten Zitat
Benutzerbild von Bernhard Geyer
Bernhard Geyer

Registriert seit: 13. Aug 2002
17.192 Beiträge
 
Delphi 10.4 Sydney
 
#2

Re: Text Datie mit Programm erstellen

  Alt 28. Jun 2007, 15:52
Schau dir mal das <Demos>\RichEdit-Demo an.

Da wird dir gezeigt wie du mit Open/Save-Dialogen arbeitest um Daten zu laden/speichern.
Windows Vista - Eine neue Erfahrung in Fehlern.
  Mit Zitat antworten Zitat
shmia

Registriert seit: 2. Mär 2004
5.508 Beiträge
 
Delphi 5 Professional
 
#3

Re: Text Datie mit Programm erstellen

  Alt 28. Jun 2007, 15:52
Du nimmst einfach die folgenden Hilfsfunktionen und schreibst dann:
StringToFile('C:\test.txt', 'Das ist der Inhalt der Datei'#13#10); Und hier die Hilfsfunktionen:
Delphi-Quellcode:
function FileToString(const FileName: string): AnsiString;
var
  fs: TFileStream;
  Len: Integer;
begin
  fs := TFileStream.Create(FileName, fmOpenRead or fmShareDenyWrite);
  try
    Len := fs.Size;
    SetLength(Result, Len);
    if Len > 0 then
      fs.ReadBuffer(Result[1], Len);
  finally
    fs.Free;
  end;
end;

procedure StringToFile(const FileName: string; const Contents: AnsiString);
var
  fs: TFileStream;
  Len: Integer;
begin
  fs := TFileStream.Create(FileName, fmCreate);
  try
    Len := Length(Contents);
    if Len > 0 then
      fs.WriteBuffer(Contents[1], Len);
  finally
    fs.Free;
  end;
end;
Andreas
  Mit Zitat antworten Zitat
Benutzerbild von Alexander Roth
Alexander Roth

Registriert seit: 17. Mai 2004
Ort: Kenn
574 Beiträge
 
Turbo Delphi für Win32
 
#4

Re: Text Datie mit Programm erstellen

  Alt 28. Jun 2007, 15:57
Alternativ ohne Streams geht es auch mit den Proceduren die ich mir mal geschrieben habe und seitdem benutze:

Delphi-Quellcode:
{-----------------------------------------------------------------------------
  Description:  Schreibt in eine TXT rein
  Procedure:    intxtschreiben
  Arguments:    text:string; pfad:string=''; vorherloschen:boolean=true
  Result:      None
  Detailed description:
-----------------------------------------------------------------------------}

procedure intxtschreiben(text:string; pfad:string=''; const endung:string='.txt'; vorherloschen:boolean=true);
var txt:textfile;
begin
  if pfad='then
    pfad:=ExtractFilePath(Application.ExeName)+dateToStr(now)+' '+inttostr(hourof(now))+'h '+inttostr(minuteof(now))+'m '+inttostr(secondof(now))+'s '+endung
  else
    DelDubbleExtension(pfad,endung);

  try
    try
      assignfile(txt,pfad);
      if (fileexists(pfad))and(not vorherloschen) then
        append(txt)
      else
        rewrite(txt);
      writeln(txt,text);
    finally
    closefile(txt);
    end;
  except
    showmessage('Es konnte keine Datei erstellt werden!'+chr(13)+
          'Falls Sie das Programm von CD Starten kopieren Sie bitte die *.exe auf ihre Festplatte und starten Sie erneut!');
  end;
end;




{-----------------------------------------------------------------------------
  Description:
  Procedure:    readtxt
  Arguments:    path:string
  Result:      string
  Detailed description:
-----------------------------------------------------------------------------}

function readtxt(path:string):string;
var txt:textfile;
    s:string;
begin
  result:='';
  if fileexists(path) then
    try
      assignfile(txt,path);
      reset(txt);
      repeat
        readln(txt,s);
        result:=result+s+#13+#10;
      until eof(txt);
    finally
      closefile(txt);
    end;
end;
Gruß Alexander
Alexander Roth
Ich bin umgestiegen auf: Lazarus und Ubuntu! Alles OpenSource!

Besuch doch mal: www.roth.us.ms
  Mit Zitat antworten Zitat
Benutzerbild von TeronG
TeronG

Registriert seit: 19. Jul 2004
Ort: München
960 Beiträge
 
Delphi 2007 Professional
 
#5

Re: Text Datie mit Programm erstellen

  Alt 28. Jun 2007, 16:32
Textdateien würde ich einfach mit ner TstringList handeln.

die hat .SaveToFile, .LoadFromFile,
Text komplette .Text,
einzelne zeile .Line[x],
Zeile hinzufügen .Add('xyz'),
uvm (siehe OH ^^)

Auswahl der Datei beim Speichern/Laden siehe Bernhard Geyer: "mit Open/Save-Dialogen "
龍 Der Unterschied zwischen Theorie und Praxis ist in der Praxis größer als in der Theorie.
  Mit Zitat antworten Zitat
Themen-Optionen Thema durchsuchen
Thema durchsuchen:

Erweiterte Suche
Ansicht

Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 22:18 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz