آموزش سی شارپ

مباحث پایه سی شارپ

مباحث پیشرفه سی شارپ

دستورات سی شارپ

کار با فایل در زبان سی شارپ – آموزش زبان سی شارپ

  • چهارشنبه ۸ خرداد ۱۳۹۸
  • بازدید ۱۴۵ نفر

csharp file io 4563 تصویر

کار با فایل در زبان سی شارپ

یک فایل مجموعه ای از اطلاعات ذخیره شده در یک دیسک می باشد که دارای یک نام و مسیر دایرکتوری خاص است. هنگامی یک فایل برای خواندن یا نوشتن باز می شود، به یک جریان (Stream) تبدیل می گردد.

به طور کلی یک جریان توالی از بایت های می باشد که از طریق یک مسیر ارتباطی ارسال می شوند. جریان ورودی (Input Stream) و جریان خروجی (Output Stream) دو نوع جریان اصلی در مبحث فایل ها هستند. جریان ورودی به منظور خواندن داده ها از فایل (عملیات خواندن) و جریان خروجی به منظور نوشتن داده ها در فایل (عملیات نوشتن) استفاده می شود.

کلاس های I/O در زبان سی شارپ

فضای نام System.IO شامل کلاس های مختلفی است که به منظور انجام عملیات های متعدد بر روی فایل ها (مانند خواندن، نوشتن، حذف و غیره) تولید شده است.

در جدول زیر برخی از کلاس های رایج و non-abstract موجود در این فضای نام را مشاهده می کنید:

ردیفتوضیحات
۱BinaryReader

به منظور خواندن داده های اولیه از یک جریان باینری استفاده می شود.

۲BinaryWriter

به منظور نوشتن داده های اولیه در قالب باینری استفاده می شود.

۳BufferedStream

یک فضای ذخیره سازی موقت برای جریانی از بایت ها است.

۴Directory

برای مدیریت ساختار دایرکتوری استفاده می شود.

۵DirectoryInfo

برای انجام عملیات های مختلف بر روی دایرکتوری ها استفاده می شود.

۶DriveInfo

اطلاعات درایوها را فراهم می کند.

۷File

به منظور دستکاری فایل ها استفاده می شودد

۸FileInfo

برای انجام عملیات های مختلف بر روی فایل ها استفاده می شود.

۹FileStream

به منظور نوشتن یا خواندن از هر محلی در فایل استفاده می شود.

۱۰MemoryStream

به منظور دسترسی تصادفی به داده های ذخیره شده در حافظه استفاده می شود.

۱۱Path

برای انجام عملیات های مختلف بر روی اطلاعات مسیر استفاده می شود.

۱۲StreamReader

به منظور خواندن کاراکترها از یک جریان بایت ها استفاده می شود.

۱۳StreamWriter

به منظور نوشتن کاراکترها در یک جریان استفاده می شود.

۱۴StringReader

برای خواندن از یک بافر رشته استفاده می شود.

۱۵StringWriter

برای نوشتن در یک بافر رشته استفاده می شود.

کلاس FileStream

کلاس FileStream که در فضای نام System.IO قرار دارد، به منظور نوشتن، خواندن و بستن فایل ها استفاده می شود. به منظور ایجاد یک فایل جدید و یا باز کردن فایلی که قبلا وجود داشته است، باید از این کلاس نمونه سازی کنید. در زیر سینتکس کلی استفاده از این کلاس را مشاهده می کنید:

در مثال زیر، ما یک نمونه از این کلاس را با نام F ایجاد کردیم تا محتوای فایل sample.txt را بخوانیم:

در جدول زیر پارامترهای مربوط به سازنده کلاس FileStream را مشاهده می کنید:

ردیفتوضیحات
۱FileMode

مشخص می کند که فایل در چه حالتی باز شود و شامل موارد زیر است:

  • Append : یک فایل موجود را باز می کند و نشانگر را به انتهای آن می برد. اگر فایل موجود نباشد، آن را ایجاد می کند.
  • Create : یک فایل جدید ایجاد می کند.
  • CreateNew : برای سیستم عامل مشخص می کند که باید یک فایل جدید ایجاد کند.
  • Open : یک فایل موجود را باز می کند.
  • OpenOrCreate : برای سیستم عامل مشخص می کند که باید یک فایل را در صورت وجود داشتن باز کند و در غیر این صورت آن را ایجاد کند.
  • Truncate : یک فایل موجود را باز می کند و اندازه بایت های آن را به صفر می رساند.
۲FileAccess

نوع دسترسی به فایل را مشخص می کند و شامل موارد زیر است:

  • Read
  • ReadWrite
  • Write
۳FileShare

FileShare شامل موارد زیر است:

  • Inheritable : به فایل اجازه می دهد تا وراثت را به پروسه های فرزند خود انتقال دهد.
  • None : از اشتراک گذاری فایل جاری جلوگیری می کند.
  • Read : اجازه می دهد تا فایل را برای خواندن باز کند.
  • ReadWrite : اجازه می دهد تا فایل را برای خواندن و نوشتن باز کند.
  • Write : اجازه می دهد تا فایل را برای نوشتن باز کند.

مثال

مثال زیر نحوه استفاده از کلاس FileStream را نشان می دهد:

زمانی که کد بالا کامپایل و اجرا شود، نتیجه زیر را تولید خواهد کرد:

عملیات پیشرفته بر روی فایل  در سی شارپ

مثال قبلی یک عملیات ساده را بر روی فایل انجام می دهد. با این حال به منظور استفاده از قدرت عظیم کلاس های IO در زبان C# باید با متدهای رایج این کلاس ها آشنا شوید.

ردیفتوضیحات
۱خواندن و نوشتن در فایل های متنی

شامل خواندن و نوشتن در فایل های متنی با استفاده از کلاس های StreamReader و StreamWriter می باشد.

۲خواندن و نوشتن در فایل های باینری

شامل خواندن و نوشتن در فایل های باینری با استفاده از کلاس های BinaryReader و BinaryWriter می باشد.

۳دستکاری سیستم فایل ویندوز

به برنامه نویس C# اجازه می دهد تا فایل ها و دایرکتوری های ویندوز را دستکاری کند.

ثبت نظر
ریفریش کنید!
نظرات کاربران (۰ مورد)

هیچ نظری ثبت نشده است