المشاركات : 361
المواضيع 53
:
: 482
الإنتساب : Jan 2011
[color="purple"]شكرا اخي على اهتمامك
ان شاء الله سأرفق لك صوره للملفات قبل وبعد تنفيذ الكود وايضا صوره بالوضع المطلوب
[/color]
قل إن صلاتي ونسكي ومحياي ومماتي لله رب العالمين
المشاركات : 361
المواضيع 53
:
: 482
الإنتساب : Jan 2011
السلام عليكم ورحمة الله
هذه بعض من الملفات المطلوب تطبيق الكود عليها
كود :
http://arabsh.com/files/0d32424f6cf0/new-folder-zip.html
حاول اخي الفاضل ان تطبق عليها الكود ولاحظ ان الامتداد تغير فعلا ولكن نص الامتدات الاول يبقى كما هو ..
ملحوظه الكود يتعامل مع الاسم والامتداد كسلسه نصية واحده وليس اسم وامتدات
قل إن صلاتي ونسكي ومحياي ومماتي لله رب العالمين
المشاركات : 58
المواضيع 7
:
: 0
الإنتساب : Mar 2009
وعليكم السلام ورحمة الله وبركاته
التعديل الوحيد بسبب وجود علامة ~
في بداية اسماء الملفات
كود :
var
OldN : TSearchRec;
NewN, Path : String;
begin
Path := 'C:\Temp\New Folder\';
if FindFirst(Path+'*.*', faArchive, OldN) = 0 then
begin
repeat
NewN := OldN.Name;
if UpperCase(Copy(NewN,1,3)) = '~ID' then
Delete(NewN,1,3);
if Copy(NewN,1,2) = '00' then
Begin
Delete(NewN,1,2);
NewN := ChangeFileExt(NewN,'.mod');
End;
ReNameFile(Path + OldN.Name ,Path + NewN);
until FindNext(OldN) <> 0;
FindClose(OldN);
end;
end;
المشاركات : 361
المواضيع 53
:
: 482
الإنتساب : Jan 2011
كده الكود تمام الله ينور لكن الملفات التى لا تبدأ ب 00 لا يتم تغير الامتدات .
لكن اين اضع
كود :
NewN := ChangeFileExt(NewN,'.mod');
ليتم تنفذها خارج الجمله الشرطيه بمعنى في جميع الاحوال يتم تغير الامتدات ..
لان بعض الملفات لم يتم تغير امتدادتها
السلام عليكم
قل إن صلاتي ونسكي ومحياي ومماتي لله رب العالمين
المشاركات : 361
المواضيع 53
:
: 482
الإنتساب : Jan 2011
تم تعديل الكود ويعمل جيدا مع جميع الملفات الا ملف واحد ولا ادري لماذا ..
كود :
var
OldN : TSearchRec;
NewN, Path : String;
begin
Path := 'C:\Temp\New Folder\';
if FindFirst(Path+'*.*', faArchive, OldN) = 0 then
begin
repeat
NewN := OldN.Name;
NewN := ChangeFileExt(NewN,'.mod');
if UpperCase(Copy(NewN,1,3)) = '~ID' then
Delete(NewN,1,3);
if Copy(NewN,1,2) = '00' then
Begin
Delete(NewN,1,2);
End;
ReNameFile(Path + OldN.Name ,Path + NewN);
until FindNext(OldN) <> 0;
FindClose(OldN);
end;
end;
سؤال اخر
كيف اضيف حرفين قبل اسم الملف وليكن ID ?
قل إن صلاتي ونسكي ومحياي ومماتي لله رب العالمين
المشاركات : 361
المواضيع 53
:
: 482
الإنتساب : Jan 2011
[color="purple"]سؤال اخر
كيف اضيف حرفين قبل اسماء الملفات وليكن id وكيف اضيف بعدها حرف e لتصبح ide إذا كانت اسماء الملفات مكونه من ثلاث حروف ؟
اما إذا كانت اسماء الملفات اكثر من ثلاث حروف فيتم إضافه كلمه ID فقط بدون حرف E
[COLOR="DarkGreen"]
ملحوظه
نفس عدد الملفات 400 ملف[/COLOR][/color]
قل إن صلاتي ونسكي ومحياي ومماتي لله رب العالمين
المشاركات : 58
المواضيع 7
:
: 0
الإنتساب : Mar 2009
السلام عليكم
هنا يتم التأكد ان كانت بداية الملف تحتوي على 00 (بعد حذف ID~) عندها يقوم بحذف الـ00 وتعديل اللاحقة
كود :
if Copy(NewN,1,2) = '00' then
Begin
Delete(NewN,1,2);
NewN := ChangeFileExt(NewN,'.mod');
End;
هنا يتم التأكد من أول ثلاثة حروف من اسم الملف
كود :
if UpperCase(Copy(NewN,1,3)) = '~ID' then
الرقم 3 يرمز الى عدد الحروف المراد التأكد منها
مثلاً لو اردت التأكد من حرفين فقط غير الرقم الى 2
وغير ID~ الى حرفين فقط مثلا D~
وهكذا....
المشاركات : 361
المواضيع 53
:
: 482
الإنتساب : Jan 2011
كيف اضيف احرف بدل من احذف
قل إن صلاتي ونسكي ومحياي ومماتي لله رب العالمين
المشاركات : 58
المواضيع 7
:
: 0
الإنتساب : Mar 2009
استخدم Insert
كود :
Insert('IDE',NewN,2)
IDE = الحروف التي تريد أضافتها
NewN = اسم الملف كما هو في المثال السابق
2 = الموقع الذي تريد بدء اضافة الحروف فيه، و الرقم 2 يعني بعد الحرف الأول
كل من 1 user says قال شكرا ل m.rabee على المشاركة المفيدة1 user says Thank You to m.rabee for this post
• ELARAPY