المشاركات : 367
المواضيع 54
:
: 506
الإنتساب : Jan 2011
[COLOR="DarkGreen"]السلام عليكم ورحمة الله وبركاته
على سبيل المثال عندي 400 ملف كل منهم يبدأ أسمه بكلمة id
id01 - id02 - id03
كيف يتم حذف كلمة id من ال 400 ملف مره واحده
لاني حاولت ان اقوم بها من خلال ال Dos ولم اتمكن
شكرا جزيلا[/COLOR]
قل إن صلاتي ونسكي ومحياي ومماتي لله رب العالمين
المشاركات : 58
المواضيع 7
:
: 0
الإنتساب : Mar 2009
وعليكم السلام ورحمة الله وبركاته
كود :
var
OldN,NewN : TSearchRec;
Path : String;
begin
Path := 'C:\Temp\';
if FindFirst(Path+'*.*', faArchive, OldN) = 0 then
begin
repeat
NewN.Name := (OldN.Name);
Delete(NewN.Name,1,2);
ReNameFile(Path + OldN.Name ,Path + NewN.Name);
until FindNext(OldN) <> 0;
FindClose(OldN);
end;
لا أعرف إن كان هناك أسهل من هذه الطريقة ولكنها تؤدي العمل بكل الأحوال
أيضاً يمكنك تعديل الاسماء من خلال powershell
كود :
gci *.pas | rename-item -newname { [string]($_.name).substring(2) }
المشاركات : 367
المواضيع 54
:
: 506
الإنتساب : Jan 2011
[COLOR="DarkGreen"]بارك الله فيك اخي m.rabee
الكود يعمل جيدا
[/COLOR]
[COLOR="Purple"]
لي سؤال بنفس الصدد
كيف اقوم بحذف اول حرفين بعد كلمه ID اذا كانا الحرفين 00 مع تغير امتدات الملف ؟
مثلا اسم الملف id0001.rpm - id0002.rpm - id0804.rpm
لتصبح الاسماء هكذا ..
كود :
01.mod - 02.mod - 0804.mod
[/COLOR]
قل إن صلاتي ونسكي ومحياي ومماتي لله رب العالمين
المشاركات : 58
المواضيع 7
:
: 0
الإنتساب : Mar 2009
اهلا أخي ELARAPY
كود :
var
OldN : TSearchRec;
NewN, Path : String;
begin
Path := 'C:\Temp\';
if FindFirst(Path+'*.*', faArchive, OldN) = 0 then
begin
repeat
NewN := OldN.Name;
if (UpperCase(NewN[1]) = 'I') and (UpperCase(NewN[2]) = 'D') then
Delete(NewN,1,2);
if (NewN[1] = '0') and (NewN[2] = '0') then
Begin
Delete(NewN,1,2);
Delete(NewN,Length(NewN)-3,4);
NewN := NewN+'.meg';
End;
ReNameFile(Path + OldN.Name ,Path + NewN);
until FindNext(OldN) <> 0;
FindClose(OldN);
end;
end;
المشاركات : 367
المواضيع 54
:
: 506
الإنتساب : Jan 2011
السلام عليكم ورحمة الله
الكود يعمل جيدا ولكن لم يقم بتغير اسم الملف id0804.rpm
قل إن صلاتي ونسكي ومحياي ومماتي لله رب العالمين
المشاركات : 58
المواضيع 7
:
: 0
الإنتساب : Mar 2009
elarapy كتب :الكود يعمل جيدا ولكن لم يقم بتغير اسم الملف id0804.rpm
وعليكم السلام ورحمة الله وبركاته
أنت أردت أن تحول الاسم في حال كان يبدأ بـ id ثم 00
إقتباس :كيف اقوم بحذف اول حرفين بعد كلمه ID اذا كانا الحرفين 00 مع تغير امتدات الملف ؟
والملف الذي ذكرته يحتوي على 0 واحدة بعد الـ id فطبعاً لن يتغير اسمه
المشاركات : 367
المواضيع 54
:
: 506
الإنتساب : Jan 2011
هذه الصوره لتوضيح الفكره
كود :
http://im38.gulfup.com/cmGZw.bmp
علما بإن امتدات الملفات الجديد هو mod ..
ملحوظه :
جميع الملفات الاصليه تحمل اربع احرف بعد كلمة ID .
جميع الملفات بعد التسمية تحمل حرفين الى اربع احرف .
ملحوظه اخرى :
بعد تجربه الكود لوحظ بإن الامتدات الجديد يضاف ولكن لا يتم حذف الامتدات القديم .
قل إن صلاتي ونسكي ومحياي ومماتي لله رب العالمين
المشاركات : 58
المواضيع 7
:
: 0
الإنتساب : Mar 2009
عدل الكود التالي:
كود :
if (NewN[1] = '0') and (NewN[2] = '0') then
Begin
Delete(NewN,1,2);
Delete(NewN,Length(NewN)-3,4);
NewN := NewN+'.meg';
End;
الى
كود :
if (NewN[1] = '0') and (NewN[2] = '0') then
Begin
Delete(NewN,1,2);
NewN := ChangeFileExt(NewN,'.mod');
End;
المشاركات : 367
المواضيع 54
:
: 506
الإنتساب : Jan 2011
السلام عليكم
الكود يعمل جيدا ولكن بقيت مشكله بسيطه وهي انه بعد تغير الامتدات يبقى اسم الامتدات القديم موجود كأنه نص ولم يحذف
قل إن صلاتي ونسكي ومحياي ومماتي لله رب العالمين
المشاركات : 58
المواضيع 7
:
: 0
الإنتساب : Mar 2009
وعليكم السلام
لقد قمت بتجربة الكود أكثر من مرة ولم اواجه هذه المشكلة !