سلام درود خدمت همراهان همیشگی سایت پی وی لرن . با آموزش زبان برنامه نویسی #F همراهتون هستیم. در دو جلسه قبل I/O و کلاس کنسول در اف شارپ رو بررسی نمودیم در این قسمت ویژگی های بررسی شده را برای درک بهتر با مثال نشان خواهیم داد. همچنین فضای نام System.IO در #F و کلاس های ارائه شده در فضای نام در #F رو خواهیم داشت.
مثال زیر خواندن از کنسول و نوشتن در آن را نشان می دهد.
1 2 3 4 5 6 7 8 | open System let main() = Console.Write("What's your name? ") let name = Console.ReadLine() Console.Write("Hello, {0}\n", name) Console.WriteLine(System.String.Format("Big Greetings from {0} and {1}", "TutorialsPoint", "Absoulte Classes")) Console.WriteLine(System.String.Format("|{0:yyyy-MMM-dd}|", System.DateTime.Now)) main() |
هنگامی که شما برنامه را کامپایل و اجرا می کنید، خروجی زیر را تولید می کند.
1 2 3 4 | What's your name? Kabir Hello, Kabir Big Greetings from TutorialsPoint and Absoulte Classes |2015-Jan-05| |
در ادامه به سراغ فضای نام System.IO در #F و کلاس های ارائه شده در فضای نام در #F خواهیم رفت.
فضای نام System.IO شامل انواع کلاس های مفیدی برای انجام اساسی I / O می باشد.
این شامل انواع یا کلاس هایی است که اجازه می دهد خواندن و نوشتن به فایل ها و جریان های داده ها و انواعی که از فایل اصلی و دایرکتوری پشتیبانی می کند را فراهم می کنند.
کلاس های مفید برای کار با سیستم فایل .
کلاس های مفید برای کار با streams یا جریان (توالی بایت)
اینم از فضای نام System.IO در #F و کلاس های ارائه شده در فضای نام در #F . در ادامه :
Class | Description |
---|---|
BinaryReader | انواع داده های اولیه را به عنوان مقادیر باینری در یک کدگذاری خاص خوانده می شود. |
BinaryWriter | انواع primitive در یک باینری به یک stream می نویسد و از نوشتن رشته ها در یک encoding خاص پشتیبانی می کند. |
BufferedStream | یک لایه بافر را برای خواندن و نوشتن عملیات در یک جریان دیگر اضافه می کند. |
Directory | روش های استاتیک را برای ایجاد، انتقال و فهرست کردن از طریق دایرکتوری ها و زیر شاخه ها نمایش می دهد. |
DirectoryInfo | روش های instance را برای ایجاد، انتقال، و ثبت نام از طریق دایرکتوری ها و زیر شاخه ها قرار می دهد. |
DirectoryNotFoundException | exception که هنگام عدم استفاده از بخشی از یک فایل یا دایرکتوری برداشته می شود. |
DriveInfo | دسترسی به اطلاعات درایو را فراهم می کند. |
DriveNotFoundException | exception ی که، هنگام تلاش برای دسترسی به یک درایو پرتاب می شود یا به اشتراک گذاری آن در دسترس نیست. |
EndOfStreamException | exception ی که هنگام خواندن پرتاب می شود، گذشته از پایان جریان تلاش می شود.———————————————————————————- |
ErrorEventArgs | داده ها را برای رویداد FileSystemWatcher.Error فراهم می کند. |
File | فراهم می کند روش های استاتیک برای ایجاد، کپی، حذف، حرکت و باز کردن یک فایل واحد، و کمک در ایجاد آبجکت FileStream. |
FileFormatException | exception زمانی که یک فایل ورودی یا داده stream فرض شده برای مطابقت با یک مشخصه خاصی از فرمت فایل، نادرست باشد، پرتاب شود. |
FileInfo | فراهم می کند خواص و روش instance برای ایجاد، کپی، حذف، حرکت، و باز کردن فایل ها و کمک در ایجاد آبجکت FileStream. |
FileLoadException | exception وقتی یک مؤلفه مدیریت شده یافت می شود پرتاب می شود اما نمی تواند بارگیری شود. |
FileNotFoundException | exception هنگام تلاش برای دسترسی به یک پرونده که بر روی دیسک موجود نباشد، پرتاب می شود. |
FileStream | یک Stream را در اطراف یک فایل نشان می دهد، که از عملیات خواندن و نوشتن همزمان و غیر همزمان انجام می شود. |
FileSystemEventArgs | داده ها را برای رویداد دایرکتوری فراهم می کند – Changed, Created, Deleted. |
FileSystemInfo | کلاس پایه برای آبجکت FileInfo و DirectoryInfo را فراهم می کند. |
FileSystemWatcher | به اعلان های تغییر فایل سیستم گوش می دهد و رویدادها را مطرح می کند هنگامی که یک دایرکتوری یا فایل در دایرکتوری تغییر می کند. |
InternalBufferOverflowException | exception هنگامی که بافر داخلی سرریز می شود، پرتاب می شود. |
InvalidDataException | exception وقتی که یک stream داده در فرمت نامعتبر است پرتاب می شود. |
IODescriptionAttribute | توصیفی را تنظیم می کند که طراحان visual یا بصری می توانند هنگام ارجاع یک event, extender یا property نمایش داده شوند. |
IOException | exception ی که هنگام وقوع یک خطای I / O پرتاب می شود. |
MemoryStream | یک جریان ایجاد می کند که پشتیبان ذخیره آن حافظه است. |
Path | عملیات را روی نمونه های String انجام می دهند که حاوی اطلاعات مسیر فایل یا مسیریابی هستند. این عملیات ها به صورت کراس پلت فرم انجام می شود. |
PathTooLongException | exception هنگام که نامگذاری مسیر یا فایلی طولانی تر از حداکثر طول سیستم تعریف شده است پرتاب می شود. |
PipeException | هنگامی که یک خطا در یک pipe رخ می دهد، پرتاب می شود. |
RenamedEventArgs | داده را برای رویداد Renamed مهیا می کند. |
Stream | یک نمای کلی از توالی بایت را فراهم می کند. این یک کلاس انتزاعی است. |
StreamReader | یک TextReader را اجرا می کند که کاراکتر ها را از یک byte stream در یک encoding خاص می نویسد. |
StreamWriter | یک TextWriter را برای نوشتن کاراکتر ها به یک جریان در یک encoding خاص اجرا می کند. برای مرور کد منبع NET Framework. برای این نوع، Reference Source را ببینید. |
StringReader | یک TextReader را اجرا می کند که از یک رشته بخواند. |
StringWriter | یک TextWriter را برای نوشتن اطلاعات به رشته اجرا می کند. اطلاعات در یک underlying StringBuilder ذخیره می شود. |
TextReader | نشان دهنده یک خواننده است که می تواند یک سری از کاراکترهای متوالی را بخواند. |
TextWriter | نشان دهنده یک نویسنده است که می تواند مجموعه ای از کاراکترهای متوالی را بنویسد. این کلاس انتزاعی است |
UnmanagedMemoryAccessor | دسترسی تصادفی از بلوک های مدیریت نشده حافظه از کد مدیریتی را فراهم می کند. |
UnmanagedMemoryStream | دسترسی به بلوک های مدیریت نشده حافظه از کد مدیریتی را فراهم می کند. |
WindowsRuntimeStorageExtensions | شامل برنامه های توسعه برای رابط IStorageFile و IStorageFolder در Windows Runtime در هنگام توسعه برنامه های Windows Store. |
WindowsRuntimeStreamExtensions | شامل روش های افزوده برای تبدیل بین streams ها در Windows Runtime و streams های مدیریت شده در NET. برای برنامه های Windows Store. |
در این جا توضیحات مربوط به فضای نام System.IO در #F و کلاس های ارائه شده در فضای نام در #F به پایان میرسه.
مثال زیر یک فایل با نام test.txt ایجاد می کند، یک پیام را در آن جا می نویسد، متن را از فایل خوانده و آن را در کنسول چاپ می کند.
توجه – مقدار کد مورد نیاز برای انجام این کار به شدت کم است!
1 2 3 4 | open System.IO // Name spaces can be opened just as modules File.WriteAllText("test.txt", "Hello There\n Welcome to:\n Tutorials Point") let msg = File.ReadAllText("test.txt") printfn "%s" msg |
هنگامی که شما برنامه را کامپایل و اجرا می کنید، خروجی زیر را تولید می کند.
1 2 3 | Hello There Welcome to: Tutorials Point |
در این قسمت ویژگی های بررسی شده در کلاس کنسول را برای درک بهتر با مثال نشان دادیم. همچنین فضای نام System.IO در #F و کلاس های ارائه شده در فضای نام در #F رو بررسی نمودیم.