سی شارپ - خواندن و نوشتن در فایلها

#C

توسط reza در 7 سال پیش
0 86.6k 3 6 سال پیش
reza darya-delam bannerlord
0

این مثال نشون میده که چطور میتونیم با سی شارپ عملیات خواندن و نوشتن رو انجام بدیم و چطور با کلاس FileStream فایها رو Save و load کنیم.

روش کلی:

using System.IO;
FileStream fileStream = new FileStream(@"c:\file.txt", FileMode.Open);
try
{
  // read from file or write to file
}
finally
{
  fileStream.Close();
}

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

FileStream fileStream = new FileStream(@"c:\file.txt", FileMode.Open);

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

FileStream fileStream = new FileStream(@"c:\file.txt", FileMode.Open, FileAccess.Read);

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

FileStream fileStream = new FileStream(@"c:\file.txt", FileMode.Open, FileAccess.Write);

باز کردن یه فایل موجود جهت نوشتن از انتهای فایل (در صورت موجود نبودن فایل اون رو ایجاد میکنه):

FileStream fileStream = new FileStream(@"c:\file.txt", FileMode.Append);

ایجاد فایل جدید و باز کردن آن برای خواندن و نوشتن در فایل(در صورتی که فایل وجود داشته باشه اون رو overwrite میکنه):
FileStream fileStream = new FileStream(@"c:\file.txt", FileMode.Create);

ایجاد فایل جدید و باز کردن آن برای خواندن و نوشتن در فایل(در صورتی که فایل وجود داشته باشه خطا نمایش داده میشه):
FileStream fileStream = new FileStream(@"c:\file.txt", FileMode.CreateNew);

منبع:softafzar.net

0

سلام دوستان
عیدتون مبارک :winksmiley02:

نحوه خواندن یه فایل متنی و گذاشتن اون توی یه متغیر با استفاده از متد StreamReader.Re adToEnd:
برای اینکار اول یه نمونه از کلاس StreamReader میسازیم و بعد ادرس فایل رو توی پارامتر اون قرار میدیم (encoding بصورت پیشفرض UTF-8 هست):

using System.IO;
StreamReader streamReader = new StreamReader(filePath);
string text = streamReader.ReadToEnd();
streamReader.Close();
0

سلام يه سوالي دارم ميشه راهنماييم كنيد:
يه برنامه كه بايد اطلاعاتيه آرايه رو در فايل بنويسه كدش رو هم اينو نوشتم اما فايلو ايجاد ميكنه اما نمينويسه
byte[] buffer = new byte[500];
FileStream fs = new FileStream("b.txt", FileMode.Create, FileAccess.Write);
fs.Write(buffer, 10, 20);
آرايه بافر هم قبلا مقدار دهي شده

0

> سلام يه سوالي دارم ميشه راهنماييم كنيد: يه برنامه كه بايد اطلاعاتيه آرايه رو در فايل بنويسه كدش رو هم اينو نوشتم اما فايلو ايجاد ميكنه اما نمينويسه byte[] buffer = new byte[500]; FileStream fs = new FileStream("b.txt", FileMode.Create, FileAccess.Write); fs.Write(buffer, 10, 20); آرايه بافر هم قبلا مقدار دهي شده
برای سوال جدید [تاپیک جدید](http://www.softafzar.net/newthread.php?do=newthread&f=5) ایجاد کنید.

خوش آمدید

برای طرح سوال، ایجاد بحث و فعالیت در سایت نیاز است ابتدا وارد حساب کاربری خود شوید. در صورتی که هنوز عضو سایت نیستید میتوانید در عرض تنها چند ثانیه ثبت نام کنید.