الفريق العربي للبرمجةأرشيف المنتديات · 2000 – 2023
نسخة أرشيفية للقراءة فقط — التسجيل والمشاركة مغلقان، والمحتوى محفوظ كما كان.

نسخ و حذف مجلد أو ملف

بدأه zawali في 4 أكتوبر 2011 · 15 رد · 1,529 مشاهدة · في قواعد بيانات Visual FoxPro
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

في حالة نسخ مجلد نستعمل الكود copy file كيف يمكن إضافة إسم أو رقم مكتوب في text او label لهذا المجلد المنسوخ

وكيف يمكن حذف هذا المجلد برمجيا

ولكم جزيل الشكر

1
#2

السلام عليكم

هل تريد نسخ وحذف فولدر باكمله

ام نسخ وحذف ملف معين الى مكان وانت تقوم بانشاء فولدر وتقوم بتسميته

ممكن توضح شوي

تحياتي للجميع wink.gif

#3

اخي العزيز قبل ان ترد اليك توضيح عن الطرق

لنسخ مجلد بالكامل بالنسبه لي استخدم طريقتين

الاولى هي تشغيل الدوس من خلال الفيجوال فوكس برو

الثانيه هي كما موضح

 && ايعاز نسخ المجلد 
lion=CreateObject("Scripting.FileSystemObject")
lion.CopyFolder("مسار المجلد الاصلي","مسار المجلد المراد النسخ اليه")

اما للحذف فهي طريقتين ايضا

الاولى عن طريق الدوس

الثانيه كما سبق ولكن للحذف

 && ايعاز حذف المجلد 
iraq=CreateObject("Scripting.FileSystemObject")

iraq.deletefolder("مسار المجلد المراد حذفه")

وبالنسبه لنسخ الملفات

COPY FILE "الملف " TO "المسار الجديد "

للحذف

DELETE FILE "الملف "

تحياتي للجميع

#4

اخي العزيز قبل ان ترد اليك توضيح عن الطرق

لنسخ مجلد بالكامل بالنسبه لي استخدم طريقتين

الاولى هي تشغيل الدوس من خلال الفيجوال فوكس برو

الثانيه هي كما موضح

 && ايعاز نسخ المجلد 
lion=CreateObject("Scripting.FileSystemObject")
lion.CopyFolder("مسار المجلد الاصلي","مسار المجلد المراد النسخ اليه")

اما للحذف فهي طريقتين ايضا

الاولى عن طريق الدوس

الثانيه كما سبق ولكن للحذف

 && ايعاز حذف المجلد 
iraq=CreateObject("Scripting.FileSystemObject")

iraq.deletefolder("مسار المجلد المراد حذفه")

وبالنسبه لنسخ الملفات

COPY FILE "الملف " TO "المسار الجديد "

للحذف

DELETE FILE "الملف "

تحياتي للجميع

#5

أخي lion iraq بما أنك السباق إلى مساعدة المتسائلين أرجوا أن لا يضيق صدرك علينا

السؤال هو عندي فولدر به محتوبات أريد نسخه برمجيا مع إضافة اسم له مثلا: فولدر إسمه "قائمة" عند نسخه بغرض الأرشفة والحفظ في partition أخرى أريد أن يأخذ "قائمة العواصم" كلمة العواصم دي أنا أكتبها في text box.

وعند حذفه أريد تحديد المسار الجديد الذي أصبح يسمى فيه "قائمة العواصم" ومن ثم حذفه

وشكرا

#6
zawali كتب:

أخي lion iraq بما أنك السباق إلى مساعدة المتسائلين أرجوا أن لا يضيق صدرك علينا

السؤال هو عندي فولدر به محتوبات أريد نسخه برمجيا مع إضافة اسم له مثلا: فولدر إسمه "قائمة" عند نسخه بغرض الأرشفة والحفظ في partition أخرى أريد أن يأخذ "قائمة العواصم" كلمة العواصم دي أنا أكتبها في text box.

وعند حذفه أريد تحديد المسار الجديد الذي أصبح يسمى فيه "قائمة العواصم" ومن ثم حذفه

وشكرا

اخي العزيز صدقني ان كنت اعرف الحل او الجواب فانا لاابخل عنه ابدا

بعد كتابة السوال بصورة واضحه

وذلك لوصول الفكرة بسرعه

وانا لا اقول اعرف كل شي في الفيجوال فوكس برو

واكرر انا في مرحله 25% على مااعتقد او اقل من اللغه الجميله هذة

واليك المثال انسخ الكود في مجلد البرنامج وقم بالتشغيل

للنسخ

post-210280-014961500 1317843298_thumb.j

اما لحذف المجلد

post-210280-079643600 1317843309_thumb.j

تحياتي للجميع

المرفقات
Capture1.JPGCapture2.JPG
1
#7

مشكور أخي lion iraq

#8

السلام عليكم

جرب الكود التالي

سيقوم بــ

- انشاء فولدر رئيسي

- انشاء 5 ملفات نصية داخله

- انشاء 5 فولدرات فرعية داخله

- نسخ الملفات النصية الى الفولدرات الفرعية

- حذف الملفات النصية منه ومن الفولدرات الفرعية

- حذف الفولدرات الفرعية

CLEAR
cOld=SET([DIRECTORY])
cMainFolder=[MainFolder]

IF CreateFolder(cMainFolder)
	CHDIR(cMainFolder)

	FOR i = 1 TO 5
		cName="MyFile" +TRANSFORM(i)+ ".txt"
		IF NOT FILE(cName)
			STRTOFILE("This is my file",cName)
		ENDIF
	NEXT

	cSubFolder=[SubFolder]
	FOR i = 1 TO 5
		IF CreateFolder(cSubFolder+TRANSFORM(i))
			SET SAFETY OFF
			COPY FILE *.txt TO (cSubFolder+TRANSFORM(i))
			SET SAFETY ON
		ENDIF
	NEXT

ENDIF
MESSAGEBOX([تم انشاء الفولدرات وانشاء ملفات بداخلها],0,"*")
IF MESSAGEBOX([هل تود حذف الفولدرات],4+32+512,"*")=6
	SET SAFETY OFF
	=RemoveAll()
	SET SAFETY ON
ENDIF

SET DEFAULT TO (cOld)
**************************************************************
FUNCTION CreateFolder( lcName )

	IF VARTYPE(lcName)<>"C" OR EMPTY(lcName)
		RETURN .F.
	ENDIF
	IF DIRECTORY( lcName  )
		WAIT WINDOW [موجود مسبقا] NOWAIT
	ELSE
		MD ( lcName )
		WAIT WINDOW [تم انشاء الفولدر] NOWAIT
	ENDIF

ENDFUNC
**************************************************************
FUNCTION RemoveAll()
	DELETE FILE *.*
	N=ADIR(arFolders, 'SubFolder???.*', "D")
	FOR i = 1 TO N
		cDir=ADDBS(cOld+"\"+cMainFolder) + arFolders(i,1)

		IF LOWER(cSubFolder)$LOWER(cDir)
			?cDir
			DELETE FILE (ADDBS(cDir)+'\*.*')
		ENDIF
		RD (cDir)
	NEXT

ENDFUNC

مع التحية

2

أستغفر الله العظيم و أتوب إليه

#10

مشكوووووووووووووووووووووووووووووووووور انا للجميع

لفائدتنا الجميله

#12

مشكورين جدا على التفاعل وسأجرب طريقة الأخ shadows عسى أن تفي بالغرض

شكرا مرة أخرى lion iraq

#14

كيفك اخونا shadows يسلموا +1 تحياتي

الحمد لله الذي هدانا

#15
العصفور الصغير كتب:

كيفك اخونا shadows يسلموا +1 تحياتي

+

كيفك اخونا اسد يسلموا +1 تحياتي

#16

شكرا للجميع واتمنى التواصل وتبادل المعلومات عبر الاسئله والنقاشات واي نوع موضوع

تحياتي للجميع

مواضيع مشابهة