Avatar billede dcgeek Nybegynder
27. juni 2003 - 12:25 Der er 5 kommentarer og
1 løsning

Ændre filtyper

Hvordan ændrer man alle filtyper i en mappe? F.eks. hvis jeg har en mappe kaldet c:\MineFiler\ og i den mappe ligger en masse txt-filer, hvordan ændrer jeg så alle filer med *.txt til f.eks. *.rtf?
Avatar billede borrisholt Novice
27. juni 2003 - 12:28 #1
lav en FindFirst .. FindNext . FindClose Loop, og for hver fil du finder laver du en renamefile
Jens B
Avatar billede nemo2000 Nybegynder
27. juni 2003 - 16:00 #2
Nu ved jeg ikke hviket OS du bruger, men i fil-typer kan du opsætte det sådan at efternavne er vist i mapperne i win... og så er det bare at slette .TXT og skrive .RTF, ellers kan det gøres via MS-Dospromt:
winmenu --> Kør! --> cmd.exe --> kommando: "ren minfil.txt minfil.rtf"
Avatar billede nemo2000 Nybegynder
27. juni 2003 - 16:01 #3
By the way, du kan også bare åbne dine filer i fx notepad / wordpad og gemme dem som rtf filer:

Gem som --> minfil.rtf (filtype = tekst/rtf)
Avatar billede dcgeek Nybegynder
27. juni 2003 - 19:27 #4
borrisholt - kan du ikke lige give et eksempel?
nemo2000 - eftersom jeg stiller det i Delphi-kategorien bruger jeg jo nok Windows, tror du ikke? Og derfor søger jeg også et PROGRAMMERINGS-eksempel på at løse problemet, ellers ville jeg nok ikke stille det i Delphi-kategorien, som ligger under Programmering.
Avatar billede nemo2000 Nybegynder
27. juni 2003 - 20:16 #5
Det må I sku undskylde....
Avatar billede lanstorp Nybegynder
30. juni 2003 - 17:29 #6
unit Unit1;

interface

uses
  SysUtils, Forms, Dialogs;

type
  TForm1 = class(TForm)
    procedure FormCreate(Sender: TObject);
  end;

var
  Form1: TForm1;

implementation
{$R *.dfm} // Include form definitions

procedure TForm1.FormCreate(Sender: TObject);
var
  searchResult : TSearchRec;

begin
  // Try to find regular files matching *.txt in the current dir
  if FindFirst('*.txt', faAnyFile, searchResult) = 0 then begin
    repeat
      //ShowMessage('File name = '+searchResult.Name);
      RenameFile(searchResult.Name,Copy(searchResult.Name,1,Length(searchResult.Name)-3)+'rtf');
    until FindNext(searchResult) <> 0;

    // Must free up resources used by these successful finds
    FindClose(searchResult);
  end;
end;

end.
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester