OpenRead ()
Faqat o'qish uchun FileStream yaratadi
OpenText ()
Mavjud matnli fayldan o'qiydigan StreamReader turini yaratadi (keyinroq tavsiflanadi)
OpenWrite ()
Faqat yozish uchun FileStream turini yaratadi
FileInfo sinf a'zolarining aksariyati spani qaytarishini anglash kerak o'qishni boshlashga imkon beradigan aniq I / O markazli ob'ekt ( FileStream , StreamWriter va boshqalar) va tegishli faylga ma'lumotlarni turli formatlarda yozish (yoki o'qish). Siz tekshirasiz bu turlarni bir lahzada, ammo shu vaqtgacha fayllar dastagini olishning turli usullarini ko'rib chiqamiz
FileInfo sinf turi.
FileInfo.Create () usuli
Fayl ushlagichini yaratishning birinchi usuli bu FileInfo.Create () usulidan foydalanishdir:
ommaviy sinf dasturi
{
Using system Main(string [] args)
{
// S diskida yangi fayl yarating.
FileInfo f = yangi FileInfo (@ "C: \ Test.dat");
FileStream fs = f.Create ();
// FileStream ob'ektidan foydalaning ...
// Fayl oqimini yoping.
fs.Close ();
}
}
FileInfo.Create () usuli sinxronlashtiradigan FileStream turini qaytarishiga e'tibor bering va asosiy faylga asenkron yozish / o'qish operatsiyalari. FileStream ekanligini bilasizmi FileInfo.Create () tomonidan qaytarilgan ob'ekt barcha foydalanuvchilarga to'liq o'qish / yozish huquqini beradi.
II BOB. FILEINFO SININFIDA ULULLAR BILAN ISHLASH
FileInfoda Open () usuli
FileInfo.Open () usulidan foydalanishingiz mumkin, mavjud fayllarni ochish va yangi fayllarni yaratish uchunFileInfo.Create () dan ko'ra aniqroq . Open () ga qo'ng'iroq tugagandan so'ng, sizga qaytariladi
bir FileStream ob'ekt. Quyidagi mantiq haqida o'ylang:
statik bo'shliq Asosiy (string [] args)
{
...
// FileInfo.Open () orqali yangi fayl yarating.
FileInfo f2 = newFileInfo (@ "C: \ Test2.dat");
FileStream fs2 = f2.Open (FileMode.OpenOrCreate,
FileAccess.ReadWrite, FileShare.None);
// FileStream ob'ektidan foydalaning ...
// Fayl oqimini yoping.
fs2.Yaqin ();
}
Haddan tashqari yuklangan Open () usulining ushbu versiyasi uchta parametrni talab qiladi:
Birinchi parametr kiritish-chiqarish so'rovining umumiy ta'mini belgilaydi (masalan, yangi fayl yaratish, mavjud faylni ochish, qo'shishFileMode ro'yxati yordamida ko'rsatilgan fayl va boshqalar) : ommaviy enum FileMode
{
// Operatsion tizim yangi fayl yaratishi kerakligini belgilaydi.
// Agar fayl allaqachon mavjud bo'lsa, System.IO.IOException tashlanadi.
CreateNew,
// Operatsion tizim yangi fayl yaratishi kerakligini belgilaydi.
// Agar fayl allaqachon mavjud bo'lsa, uning ustiga yoziladi.
Create,
Open,
// Agar mavjud bo'lsa operatsion tizim faylni ochishi kerakligini belgilaydi;
aks holda, yangi fayl yaratilishi kerak.
OpenOrCreate,
Truncate,
Append
}
Ikkinchi parametr, ya'ni FileAccess ro'yxatidan olingan qiymatni aniqlash uchun ishlatiladi asosiy oqimning o'qish / yozish harakati:
public enum
FileAccess
{
Read,
Write,
ReadWrite
}
Nihoyat, sizda faylning qanday bo'lishishini ko'rsatadigan uchinchi parametr FileShare mavjud boshqa fayl ishlovchilari orasida. Mana asosiy nomlar:
public enum FileShare
{
None,
Read,
Write,
ReadWrite
}
FileInfo OpenRead () va FileInfo.OpenWrite () usullari
Bo'lsa FileInfo.Open () usuli siz juda moslashuvchan tarzda fayl tutqichini olish imkonini beradi, FileInfo sinfi shuningdek OpenRead () va OpenWrite () nomli a'zolarni taqdim etadi . Siz tasavvur qilganingizdek, ushbu usullar to'g'ri tuzilgan o'qish uchun yoki faqat yozish uchun FileStream turini qaytaradi har xil ro'yxatga olish qiymatlarini etkazib berish kerak. Kabi FileInfo.Create () va FileInfo.Open () , OpenRead () va OpenWrite () FileStream ob'ektini qaytaradi :
Static void Main(string [] args)
{
...
// Faqat o'qish uchun ruxsat berilgan FileStream ob'ektini oling.
FileInfo f3 = yangi FileInfo (@ "C: \ Test3.dat");
FileStream readOnlyStream = f3.OpenRead ();
// FileStream ob'ektidan foydalaning ...
readOnlyStream.Close ();
// Endi faqat yozish uchun ruxsat berilgan FileStream ob'ektini oling.
FileInfo f4 = yangi FileInfo (@ "C: \ Test4.dat");
FileStream writeOnlyStream = f4.OpenWrite ();
// FileStream ob'ektidan foydalaning
writeOnlyStream.Close ();
}
FileInfo.OpenText () usuli
FileInfo turining yana bir ochiq markazli a'zosi bu OpenText () Create () , Open () , OpenRead () dan farqli o'laroq , va OpenWrite () usuli , OpenText () o'rniga StreamReader turidagi namunani qaytaradi bir FileStream turi:
Static void Main (string [] arg)
{
...
Do'stlaringiz bilan baham: |