14-10-12, 05:02 PM
الفئة DirectoryInfo :
اضافة لاحتواءها على الخصائص السابقة من FileStreamInfo ، تحتوي هذه الفئة على الدوال التالية :
[COLOR="#006400"]Create(), CreateSubdirectory() : انشاء مجلد او مجلد فرعي في المسار المحدد .
Delete() : حذف المجلد وكامل محتوياته .
GetDirectories() : تعيد مصفوفة من الاسماء توضح اسماء المجلدات الفرعية .
GetFiles() : تعيد مصفوفة Array من FileInfo تحتوي على كافة الملفات الموجودة في هذا المجلد .
MoveTo() : نقل المجلد وكافة محتوياته إلى مكان جديد .
Parent : معرفة المجلد الاكبر من هذا المجلد .
Root : لمعرفة ال Driver الخاص بهذا المجلد .
[/COLOR]
قبل البدء ، انت بحاجة لتعريف نسخة من هذه الفئة ، يمكنك تمرير المكان الذي تود البدء منه في المشيد Constructor بالشكل التالي مثلاً ( لمسار البرنامج ) :
C#:
vb.net:
رمز برمجي:
او إلى مسار عادي :
C#:
رمز برمجي:
vb.net:
رمز برمجي:
*** لو كنت مبرمج سي شارب فلا بد من عدم وضع \ وحدها داخل علامات التنصيص لإن لها استخدامات أخرى مثل \n \r وخلافه ، لكن يمكنك تحديد نوع البيانات بالداخل بأنها مباشرة عن طريق اضافة @ بالشكل التالي مثلاً :
رمز برمجي:
ليس فقط بامكانك الربط مع مجلد موجود ، بل يمكنك الربط إلى مجلد غير موجود ومن ثم انشاءه :
C#:
رمز برمجي:
vb.net:
رمز برمجي:
يمكنك ايضاً استعراض كافة الملفات داخل المجلد :
C#:
رمز برمجي:
vb.net:
رمز برمجي:
يمكنك استخدام خصائص FileSystemInfo التي تحتوي على كافة المعلومات المتعلقة بالمجلد ، فمثلاً لعرض تاريخ إنشاء المجلد :
C#:
رمز برمجي:
vb.net:
رمز برمجي:
او يمكنك استعراض ملفات من نوع معين فقط ، مثلاً لاستعراض الملفات النصية فقط GIF ومن ثم كتابتها ، لا تنس ان الناتج من نوع FileInfo ويمكن تطبيق خصائص FileSsystemInfo عليها .
C#:
رمز برمجي:
vb.net:
Imports System
Imports System.Collections.Generic
Imports System.Linq
Imports System.Text
Imports System.IO
Namespace ConsoleApplication7
Class Program
Private Shared Sub Main(ByVal args As String())
Dim dir1 As New DirectoryInfo("C:\Users\Ahmed\Documents\Visual Studio 2008\WebSites\WebSite4")
Dim imageFiles As FileInfo() = dir1.GetFiles("*.gif")
For Each f As FileInfo In imageFiles
Console.WriteLine("Name: {0} - Creation Date: {1} . " & Chr(10) & "" & Chr(10) & "", f.Name, f.CreationTime)
Next
Console.ReadKey()
End Sub
End Class
End Namespace
الناتج سيكون بالشكل التالي مثلاً :
[ATTACH=CONFIG]907[/ATTACH]
اضافة لاحتواءها على الخصائص السابقة من FileStreamInfo ، تحتوي هذه الفئة على الدوال التالية :
[COLOR="#006400"]Create(), CreateSubdirectory() : انشاء مجلد او مجلد فرعي في المسار المحدد .
Delete() : حذف المجلد وكامل محتوياته .
GetDirectories() : تعيد مصفوفة من الاسماء توضح اسماء المجلدات الفرعية .
GetFiles() : تعيد مصفوفة Array من FileInfo تحتوي على كافة الملفات الموجودة في هذا المجلد .
MoveTo() : نقل المجلد وكافة محتوياته إلى مكان جديد .
Parent : معرفة المجلد الاكبر من هذا المجلد .
Root : لمعرفة ال Driver الخاص بهذا المجلد .
[/COLOR]
قبل البدء ، انت بحاجة لتعريف نسخة من هذه الفئة ، يمكنك تمرير المكان الذي تود البدء منه في المشيد Constructor بالشكل التالي مثلاً ( لمسار البرنامج ) :
C#:
كود :
DirectoryInfo dir1 = new DirectoryInfo(".");vb.net:
رمز برمجي:
كود :
Dim dir1 As New DirectoryInfo(".")او إلى مسار عادي :
C#:
رمز برمجي:
كود :
DirectoryInfo dir1 = new DirectoryInfo("C:\Ahmed");vb.net:
رمز برمجي:
كود :
Dim dir1 As New DirectoryInfo("C:\Ahmed")*** لو كنت مبرمج سي شارب فلا بد من عدم وضع \ وحدها داخل علامات التنصيص لإن لها استخدامات أخرى مثل \n \r وخلافه ، لكن يمكنك تحديد نوع البيانات بالداخل بأنها مباشرة عن طريق اضافة @ بالشكل التالي مثلاً :
رمز برمجي:
كود :
DirectoryInfo dir1 = new DirectoryInfo(@"C:\Ahmed");ليس فقط بامكانك الربط مع مجلد موجود ، بل يمكنك الربط إلى مجلد غير موجود ومن ثم انشاءه :
C#:
رمز برمجي:
كود :
DirectoryInfo dir1 = new DirectoryInfo(@"C:\Ahmed\Test");
dir1.Create();vb.net:
رمز برمجي:
كود :
Dim dir1 As New DirectoryInfo("C:\Ahmed\Test")
dir1.Create()يمكنك ايضاً استعراض كافة الملفات داخل المجلد :
C#:
رمز برمجي:
كود :
FileInfo[] imageFiles = dir.GetFiles();vb.net:
رمز برمجي:
كود :
Dim imageFiles As FileInfo() = dir.GetFiles()يمكنك استخدام خصائص FileSystemInfo التي تحتوي على كافة المعلومات المتعلقة بالمجلد ، فمثلاً لعرض تاريخ إنشاء المجلد :
C#:
رمز برمجي:
كود :
Console.WriteLine(dir1.CreationTime);vb.net:
رمز برمجي:
كود :
Console.WriteLine(dir1.CreationTime)او يمكنك استعراض ملفات من نوع معين فقط ، مثلاً لاستعراض الملفات النصية فقط GIF ومن ثم كتابتها ، لا تنس ان الناتج من نوع FileInfo ويمكن تطبيق خصائص FileSsystemInfo عليها .
C#:
رمز برمجي:
كود :
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.IO;
namespace ConsoleApplication7
{
class Program
{
static void Main(string[] args)
{
DirectoryInfo dir1 = new DirectoryInfo(@"C:\Users\Ahmed\Documents\Visual Studio 2008\WebSites\WebSite4");
FileInfo[] imageFiles = dir1.GetFiles("*.gif");
foreach (FileInfo f in imageFiles)
{
Console.WriteLine("Name: {0} - Creation Date: {1} . \n\n", f.Name, f.CreationTime);
}
Console.ReadKey();
}
}
}vb.net:
Imports System
Imports System.Collections.Generic
Imports System.Linq
Imports System.Text
Imports System.IO
Namespace ConsoleApplication7
Class Program
Private Shared Sub Main(ByVal args As String())
Dim dir1 As New DirectoryInfo("C:\Users\Ahmed\Documents\Visual Studio 2008\WebSites\WebSite4")
Dim imageFiles As FileInfo() = dir1.GetFiles("*.gif")
For Each f As FileInfo In imageFiles
Console.WriteLine("Name: {0} - Creation Date: {1} . " & Chr(10) & "" & Chr(10) & "", f.Name, f.CreationTime)
Next
Console.ReadKey()
End Sub
End Class
End Namespace
الناتج سيكون بالشكل التالي مثلاً :
[ATTACH=CONFIG]907[/ATTACH]
