델파이 초보입니다
하나의 폴더에 여러개의 파일(1500여개정도)이 있습니다
가령
aaa_bbb_ccc.zzz
qbsqq_wer_awe_awee.zzz
q_asdf_asdf_asdfasdg.zzz
확장명은 임의로 zzz 이라고 하고
단지 일률적으로 파일명 사이에 있는 "_"를 빼고 대신에 space key 값 " "를
넣고싶습니다
파일에있는 데이타를 바꾸는 건 아닙니다
하나하나 수정하기엔 넘 힘드네여
한 바이트 씩 읽어서 바꾸면 될것같은데...
파일명 읽어오고 바꿔주는걸 모르겟네여
아시는분 알려주시면 감사하겠습니다
> 델파이 초보입니다
> 하나의 폴더에 여러개의 파일(1500여개정도)이 있습니다
> 가령
> aaa_bbb_ccc.zzz
> qbsqq_wer_awe_awee.zzz
> q_asdf_asdf_asdfasdg.zzz
>
> 확장명은 임의로 zzz 이라고 하고
> 단지 일률적으로 파일명 사이에 있는 "_"를 빼고 대신에 space key 값 " "를
> 넣고싶습니다
> 파일에있는 데이타를 바꾸는 건 아닙니다
> 하나하나 수정하기엔 넘 힘드네여
>
> 한 바이트 씩 읽어서 바꾸면 될것같은데...
> 파일명 읽어오고 바꿔주는걸 모르겟네여
> 아시는분 알려주시면 감사하겠습니다
> ///////////////////////////////////////////////////////////////////////////////
아래예제참조하세요
DirectoryList는 디렉토리전체를 가진 스트링변수입니다.
var
SearchRec: TSearchRec;
i : integer;
DirectoryList, P_Name, N_Name : string;
if FindFirst(DirectoryList + '*.*', faAnyFile , SearchRec) = 0 then
begin
repeat
if pos('.zzz', SearchRec.Name)>0 then
begin
P_Name := DirectoryList + '' + SearchRec.Name;
if (FileExists(P_Name)) then
begin
N_Name := StringReplace(P_Name, '_', ' ', [rfReplaceAll]);
RenameFile(P_Name, N_Name);
end;
end;
until FindNext(SearchRec) <> 0;
FindClose(SearchRec);
end;