AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Datei kopieren und umbenennen

Ein Thema von strom · begonnen am 6. Dez 2015 · letzter Beitrag vom 6. Dez 2015
Antwort Antwort
strom

Registriert seit: 23. Aug 2008
Ort: Keine Ergebnisse gefunden
290 Beiträge
 
#1

Datei kopieren und umbenennen

  Alt 6. Dez 2015, 13:28
hallo,

bekomme hier eine Fehlermeldung! Siehe Anhang!
Was muss geändert werden?

Delphi-Quellcode:
unit Unit1;

interface

uses
  Winapi.Windows, Winapi.Messages, System.SysUtils, System.Variants, System.Classes, Vcl.Graphics,
  Vcl.Controls, Vcl.Forms, Vcl.Dialogs, Vcl.StdCtrls, Filectrl, Vcl.ExtCtrls,
  Vcl.ComCtrls;

type
  TForm1 = class(TForm)
    Panel1: TPanel;
    Edit1: TEdit;
    Label1: TLabel;
    Button2: TButton;
    Panel2: TPanel;
    Edit2: TEdit;
    Label2: TLabel;
    Panel3: TPanel;
    Button3: TButton;
    Button4: TButton;
    procedure Button2Click(Sender: TObject);
    procedure FormCreate(Sender: TObject);
    procedure Button3Click(Sender: TObject);
    procedure Button4Click(Sender: TObject);
  private
    { Private-Deklarationen }
  public
    { Public-Deklarationen }
  end;

var
  Form1: TForm1;
   zaehler: integer =1;

implementation

{$R *.dfm}

procedure TForm1.Button2Click(Sender: TObject);
var
  Dir: String;
begin
  SelectDirectory('Verzeichnispfad wählen', '', Dir);
  ShowMessage(Dir);
  Edit1.Text := (Dir);
end;

procedure TForm1.Button3Click(Sender: TObject);
var
  Dir: String;
begin
  SelectDirectory('Verzeichnispfad wählen', '', Dir);
  ShowMessage(Dir);
  Edit2.Text := (Dir);
end;

procedure TForm1.Button4Click(Sender: TObject);
var
  mem : TMemoryStream;
  FilePathA, FilePathB : string;
  i:integer;
begin
  inc(zaehler);
  FilePathA := Edit1.Text + (ParamStr(i))+ '*.asc';; // Pfad der zu kopierenden Datei
  FilePathB := Edit2.Text + (ParamStr(i)) +(FormatDateTime('yymmdd',now))+(Format('%.4d',[zaehler]) + '.asc'); // Zielpfad
  mem := TMemoryStream.Create;
  try
    mem.LoadFromFile(filePathA);
    mem.SaveToFile(FilepathB);
  finally
    mem.Free;
  end;
end;

procedure TForm1.FormCreate(Sender: TObject);
begin
 Edit1.Clear;
 Edit2.Clear;
end;

end.
Miniaturansicht angehängter Grafiken
delphi.png  

Geändert von strom ( 6. Dez 2015 um 15:02 Uhr)
  Mit Zitat antworten Zitat
Benutzerbild von frankyboy1974
frankyboy1974

Registriert seit: 7. Apr 2015
Ort: SH
169 Beiträge
 
Delphi XE7 Professional
 
#2

AW: Datei kopieren und unbenennen

  Alt 6. Dez 2015, 13:42
hallo,

ich gehe mal davon aus, dass die Datei die du kopieren möchtest nicht wirklich 'input*.asc' heisst. Ein '*' ist im Dateinamen gar nicht gültig.

mfg
Java ist auch eine Insel.
Ist Delphi von Oracle?
In meiner Buchstabensuppen fehlt das C++!
  Mit Zitat antworten Zitat
strom

Registriert seit: 23. Aug 2008
Ort: Keine Ergebnisse gefunden
290 Beiträge
 
#3

AW: Datei kopieren und unbenennen

  Alt 6. Dez 2015, 13:51
Hallo,
im Verzeichnis stehen zurzeit nur eine "Test.asc" Datei.
Später möchte ich alle Dateien kopieren und mit fortlaufend (Nr.) und Datum beziffern.
  Mit Zitat antworten Zitat
Benutzerbild von frankyboy1974
frankyboy1974

Registriert seit: 7. Apr 2015
Ort: SH
169 Beiträge
 
Delphi XE7 Professional
 
#4

AW: Datei kopieren und unbenennen

  Alt 6. Dez 2015, 14:04
hallo,

dann musst du im Moment die Zeile

FilePathA := Edit1.Text + (ParamStr(i))+ '*.asc';; // Pfad der zu kopierenden Datei

in

FilePathA := Edit1.Text + (ParamStr(i))+ '\test.asc';; // Pfad der zu kopierenden Datei ändern.

Wie man über ein Verzeichnis iteriert und Dateien nach einem vorgegeben Muster sucht ('*.asc'), findest du bestimmt in diesem Forum (Stichwort: TSearchrec).

mfg
Java ist auch eine Insel.
Ist Delphi von Oracle?
In meiner Buchstabensuppen fehlt das C++!
  Mit Zitat antworten Zitat
Benutzerbild von DeddyH
DeddyH

Registriert seit: 17. Sep 2006
Ort: Barchfeld
27.624 Beiträge
 
Delphi 12 Athens
 
#5

AW: Datei kopieren und unbenennen

  Alt 6. Dez 2015, 14:05
Und was ändert das an der Tatsache, dass Du das * im Code stehen hast?
Detlef
"Ich habe Angst vor dem Tag, an dem die Technologie unsere menschlichen Interaktionen übertrumpft. Die Welt wird eine Generation von Idioten bekommen." (Albert Einstein)
Dieser Tag ist längst gekommen
  Mit Zitat antworten Zitat
Benutzerbild von Luckie
Luckie

Registriert seit: 29. Mai 2002
37.621 Beiträge
 
Delphi 2006 Professional
 
#6

AW: Datei kopieren und unbenennen

  Alt 6. Dez 2015, 14:07
Wie schon gesagt wurde. Wildcards sind in Dateinamen nicht erlaubt. LoadFromFile läd genau eine Datei. Woher soll LoadFromFile denn wissen, welche Datei gemeint ist?
Michael
Ein Teil meines Codes würde euch verunsichern.
  Mit Zitat antworten Zitat
strom

Registriert seit: 23. Aug 2008
Ort: Keine Ergebnisse gefunden
290 Beiträge
 
#7

AW: Datei kopieren und unbenennen

  Alt 6. Dez 2015, 14:24
Hallo,

das * sollte als Joker fungieren?
Möchte unterschiedliche ASCII Dateien aus einem Ordner umbenennen und kopieren.

1234567891.asc
1234567892.asc
1234567893.asc
1234567894.asc

Geändert von strom ( 6. Dez 2015 um 15:02 Uhr)
  Mit Zitat antworten Zitat
Benutzerbild von Dalai
Dalai

Registriert seit: 9. Apr 2006
1.682 Beiträge
 
Delphi 5 Professional
 
#8

AW: Datei kopieren und unbenennen

  Alt 6. Dez 2015, 14:36
Wenn es dir nur ums Kopieren geht, warum benutzt du dann nicht eine normale Kopierfunktion wie MSDN-Library durchsuchenCopyFile? Wozu die Datei in den Speicher lesen, um sie dann gleich wieder rauszuschreiben?

Und: Natürlich musst du mit irgendeiner Art Schleife über deine Dateien iterieren (üblicherweise mit FindFirst/FindNext/FindClose), um die Dateien nacheinander zu kopieren. Nur weil man die Wildcard-Syntax von diversen Programmen her kennt, bedeutet das nicht, dass die (LowLevel-)Funktionen ebenso damit umgehen können.

MfG Dalai
  Mit Zitat antworten Zitat
Antwort Antwort


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 00:58 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