تکین وب | آموزش برنامه نویسی
تکین وب | آموزش برنامه نویسی

کاربا فایل ها در سی شارپ(بخش اول)

۳۰ شهریور ۱۳۹۵

کار با فایلها در سی شارپ(بخش اول)
در زبان سی شارپ هم مانند زبان های دیگر مثل c , c++میتوان از فایل ها استفاده کرد و اعمالی را روی آنها انجام داد.مثل نوشتن و خواندن و…
فایل ها در سی شارپ از یک فضای نامی مشتق میشوند.این فضای نامی بصورت زیر تعریف میشود:
using system.IO
این فضای نامی مخفف input/output به معنی ورودی/خروجی هستند. در این فضای نامی ابزار هایی بصورت زیر وجود دارند:
۱_FileStream
این ابزار برای خواندن و نوشتن مورد استفاده قرار میگیرد. این ابزار مشتقاتی دارد که ذکر میکنیم
A)StreamWriter
این ابزار برای نوشتن در فایل مورد استفاده قرار میگیرد. به عنوان مثال فرض کنید میخواهیم عبارت “من یک برنامه نویس هستم”را در فایل بنویسیم
برای این کار بصورت زیر مراحل رو دنبال میکنیم
اولا باید از fillestream آبجکت بسازیم.به این صورت که میبینین

FileStream myfile =new FileStream ("test_file",FileMode.Append , FileAccess.write); 

این آبجکت که در بالا ساختم چند قسمت داره که یکم به توضیح نیاز داره:
“test file”:
تو این قسمت اسم فایلی که قرار هست ساخته بشه رو مینویسیم.اگه فایل رو خواستین در جای مخصوصی ایجاد بشه باید آدرس اون محل رو هم ودر کنار این اسم اضافه کنین مثل :
“c://programfiles/myfiles/ test file”
اما اگر فقط اسم فایل رو بنویسین سیستم فایل شما رو در resourceهمون برنامه ایجاد و ذخیره میکنه.
FileMode
این قسمت نحوه ایجادفایل رو مشخص میکنه که حاوی چند قسمت مثل append, create, createNew, open, openOrCreateهستند که توضیح کوتاهی راجع به هر کدوم میدم:
append : این متد در واقع اطلاعات رو به فایل موجود اضافه میکنه و اطلاعات قبلی فایل رو پاک نمیکنه و اگر فایلی نبود یه فایل جدید با این اسم میسازه
create :این متد همونطور که از اسمش پیداست یه فایل میسازه ولی اگه این فایل قبلا وجود داشته باشه ارور میده
createNew :یه فایل جدید میسازه و اگه فایلی با این اسم وجود داشت اسم فایل ها رو تغییر مید
open : فایل رو فقط باز میکنه و برای خواندن از این متد استفاده میشه

FileAccess
این قسمت بیانگر اینه که دسترسی فایل در چه حدی باشه که حاوی سه قسمت هست :read, write, readwrite که توضیح میدم :
read :یعنی فقط باید عمل خواندن انجام بپذیره
write:یعنی فقط عمل خواندن صورت بگیره
readwrite :یعنی هر دو عمل رو میتوان انجام داد

دوما باید از streamwriter یه آبجکت میسازیم به صورت زیر:


StreamWriter text =new StreamWriter (myfile);

خب این myfileکه در پرانتز قرار گرفته همون آبجکت ایجاد شده در FileStream هست.
حالا همه چیز برای نوشتن متن مورد نظر در فایل آماده شده و در مرحله بعد متن رو در فایل مینویسیم:

 text.Write ("من یک برنامه نویس هستم");

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


text.close ();

خب برنامه کامل شد و میتونین به آدرسی که در قسمت filestreamدادین برید و فایل مورد نظر رو که با نام test fileذخیره کردین پیدا کنین تا ببینید که متن موردنظر نوشته شده یا نه.
کد این برنامه رو هم بصورت کامل میزارم :

using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
using System.IO;
namespace file
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }

        private void Form1_Load(object sender, EventArgs e)
        {
            FileStream myfile = new FileStream("test file", FileMode.Append, FileAccess.Write);
            StreamWriter text = new StreamWriter(myfile);
            text.Write("من یک برنامه نویس هستم");
            text.Close();
        }
    }
}

پایان این بخش:)

درباره ی سجاد

دانشجوی کامپیوترم اهل اصفهان به همین سادگی :) :)

کلیه ی حقوق مادی و معنوی مطالب متعلق به سایت تکین وب می باشد و کپی برداری و بازنشر آن بدون ذکر منبع کاری غیر حرفه ای و غیر اخلاقی و قابل پیگرد قانونی خواهد بود.
کانال تلگرام تکین وب