توضیحات
از chrome.fileSystem
API برای ایجاد، خواندن، پیمایش و نوشتن در سیستم فایل محلی کاربر استفاده کنید. با این API، Chrome Apps میتواند در مکانی که کاربر انتخاب کرده است بخواند و بنویسد. به عنوان مثال، یک برنامه ویرایشگر متن می تواند از API برای خواندن و نوشتن اسناد محلی استفاده کند. همه خرابی ها از طریق chrome.runtime.lastError اطلاع رسانی می شود.
مجوزها
fileSystem
در دسترس بودن
انواع
AcceptOption
خواص
- توضیحات
رشته اختیاری
این توضیحات متنی اختیاری برای این گزینه است. اگر وجود نداشته باشد، یک توضیح به طور خودکار ایجاد می شود. معمولاً حاوی لیست گسترده ای از پسوندهای معتبر است (مثلاً "text/html" ممکن است به "*.html، *.htm" گسترش یابد).
- پسوندها
رشته[] اختیاری است
برنامه های افزودنی برای پذیرش، به عنوان مثال "jpg"، "gif"، "crx".
- mimeTypes
رشته[] اختیاری است
انواع Mime برای پذیرش، به عنوان مثال "image/jpeg" یا "audio/*". یکی از mimeType ها یا پسوندها باید حداقل یک عنصر معتبر داشته باشد.
ChooseEntryOptions
خواص
- می پذیرد
AcceptOption [] اختیاری است
لیست اختیاری گزینه های پذیرش برای این بازکننده فایل. هر گزینه به عنوان یک گروه منحصر به فرد به کاربر نهایی ارائه می شود.
- همه انواع را قبول می کند
بولی اختیاری
آیا برای پذیرش همه انواع فایل، علاوه بر گزینه های مشخص شده در آرگومان accepts. پیش فرض درست است. اگر فیلد پذیرش تنظیم نشده باشد یا هیچ ورودی معتبری نداشته باشد، همیشه به درستی بازنشانی میشود.
- چندگانه را می پذیرد
بولی اختیاری
آیا چندین فایل را بپذیرید. این فقط برای openFile و openWritableFile پشتیبانی می شود. در صورتی که روی true تنظیم شده باشد، تماس برگشتی به ChoiceEntry با لیستی از ورودی ها فراخوانی می شود. در غیر این صورت با یک ورودی فراخوانی می شود.
- پیشنهاد نام
رشته اختیاری
نام فایل پیشنهادی که به عنوان نام پیش فرض برای خواندن یا نوشتن به کاربر ارائه می شود. این اختیاری است.
- نوع
انتخاب EntryType اختیاری است
اعلان نمایش را تایپ کنید. پیش فرض "openFile" است.
ChooseEntryType
Enum
"openFile"
از کاربر می خواهد یک فایل موجود را باز کند و در صورت موفقیت یک FileEntry برمی گرداند. از Chrome 31 به بعد، در صورتی که برنامه دارای مجوز «نوشتن» در زیر «fileSystem» باشد، FileEntry قابل نوشتن خواهد بود. در غیر این صورت، FileEntry فقط خواندنی خواهد بود.
"openWritableFile"
از کاربر می خواهد یک فایل موجود را باز کند و در صورت موفقیت یک FileEntry قابل نوشتن برمی گرداند. اگر برنامه مجوز «نوشتن» را در «fileSystem» نداشته باشد، تماسهایی که از این نوع استفاده میکنند با خطای زمان اجرا شکست خواهند خورد.
"saveFile"
از کاربر می خواهد یک فایل موجود یا یک فایل جدید را باز کند و در صورت موفقیت یک FileEntry قابل نوشتن برمی گرداند. اگر برنامه مجوز «نوشتن» را در «fileSystem» نداشته باشد، تماسهایی که از این نوع استفاده میکنند با خطای زمان اجرا شکست خواهند خورد.
"OpenDirectory"
از کاربر می خواهد یک دایرکتوری را باز کند و در صورت موفقیت یک DirectoryEntry را برمی گرداند. اگر برنامه دارای مجوز «directory» در «fileSystem» نباشد، تماسهایی که از این نوع استفاده میکنند با خطای زمان اجرا شکست میخورند. اگر برنامه دارای مجوز «نوشتن» در «fileSystem» باشد، DirectoryEntry برگشتی قابل نوشتن خواهد بود. در غیر این صورت فقط خواندنی خواهد بود. جدید در کروم 31.
RequestFileSystemOptions
خواص
- شناسه حجم
رشته
شناسه جلد درخواستی
- قابل نوشتن
بولی اختیاری
آیا فایل سیستم درخواستی باید قابل نوشتن باشد یا خیر. پیش فرض فقط خواندنی است.
Volume
خواص
- شناسه حجم
رشته
- قابل نوشتن
بولی
VolumeListChangedEvent
خواص
- جلدها
حجم []
روش ها
chooseEntry()
chrome.fileSystem.chooseEntry(
options?: ChooseEntryOptions,
callback: function,
)
از کاربر بخواهید یک فایل یا دایرکتوری را انتخاب کند.
پارامترها
- گزینه ها
انتخاب EntryOptions اختیاری است
- پاسخ به تماس
تابع
پارامتر
callback
به نظر می رسد:(entry?: Entry, fileEntries?: FileEntry[]) => void
- ورود
ورود اختیاری است
- ورودی های فایل
FileEntry[] اختیاری است
getDisplayPath()
chrome.fileSystem.getDisplayPath(
entry: Entry,
callback?: function,
)
مسیر نمایش یک آبجکت Entry را دریافت کنید. مسیر نمایش بر اساس مسیر کامل فایل یا دایرکتوری در سیستم فایل محلی است، اما ممکن است برای اهداف نمایش قابل خواندن باشد.
پارامترها
- ورود
ورود
- پاسخ به تماس
عملکرد اختیاری
پارامتر
callback
به نظر می رسد:(displayPath: string) => void
- displayPath
رشته
برمی گرداند
قول<رشته>
Chrome 117+Promises فقط برای Manifest V3 و نسخههای جدیدتر پشتیبانی میشود، پلتفرمهای دیگر باید از callback استفاده کنند.
getVolumeList()
chrome.fileSystem.getVolumeList(
callback?: function,
)
فهرستی از حجم های موجود برای requestFileSystem()
را برمی گرداند. مجوز مانیفست "fileSystem": {"requestFileSystem"}
مورد نیاز است. فقط برای برنامه های کیوسک در حال اجرا در جلسه کیوسک موجود است. در صورت بروز خطا، volumes
تعریف نشده و chrome.runtime.lastError
تنظیم می شود.
پارامترها
برمی گرداند
وعده< جلد [] | تعریف نشده>
Chrome 117+Promises فقط برای Manifest V3 و نسخههای جدیدتر پشتیبانی میشود، پلتفرمهای دیگر باید از callback استفاده کنند.
getWritableEntry()
chrome.fileSystem.getWritableEntry(
entry: Entry,
callback: function,
)
یک ورودی قابل نوشتن از ورودی دیگر دریافت کنید. اگر برنامه مجوز "نوشتن" را در "fileSystem" نداشته باشد، این تماس با خطای زمان اجرا ناموفق خواهد بود. اگر ورودی یک DirectoryEntry باشد، اگر برنامه دارای مجوز «directory» در «fileSystem» نباشد، این فراخوانی ناموفق خواهد بود.
پارامترها
- ورود
ورود
- پاسخ به تماس
تابع
پارامتر
callback
به نظر می رسد:(entry: Entry) => void
- ورود
ورود
isRestorable()
chrome.fileSystem.isRestorable(
id: string,
callback?: function,
)
نشان می دهد که آیا برنامه مجوز بازیابی ورودی با شناسه داده شده را دارد یا خیر.
پارامترها
- شناسه
رشته
- پاسخ به تماس
عملکرد اختیاری
پارامتر
callback
به نظر می رسد:(isRestorable: boolean) => void
- قابل بازیابی است
بولی
برمی گرداند
وعده<boolean>
Chrome 117+Promises فقط برای Manifest V3 و نسخههای جدیدتر پشتیبانی میشود، پلتفرمهای دیگر باید از callback استفاده کنند.
isWritableEntry()
chrome.fileSystem.isWritableEntry(
entry: Entry,
callback?: function,
)
دریافت می کند که آیا این ورودی قابل نوشتن است یا خیر.
پارامترها
- ورود
ورود
- پاسخ به تماس
عملکرد اختیاری
پارامتر
callback
به نظر می رسد:(isWritable: boolean) => void
- قابل نوشتن است
بولی
برمی گرداند
وعده<boolean>
Chrome 117+Promises فقط برای Manifest V3 و نسخههای جدیدتر پشتیبانی میشود، پلتفرمهای دیگر باید از callback استفاده کنند.
requestFileSystem()
chrome.fileSystem.requestFileSystem(
options: RequestFileSystemOptions,
callback?: function,
)
برای حجمی که با options.volumeId
نشان داده شده است، درخواست دسترسی به یک سیستم فایل می کند. اگر options.writable
روی true تنظیم شود، سیستم فایل قابل نوشتن خواهد بود. در غیر این صورت، فقط خواندنی خواهد بود. گزینه writable
به مجوز "fileSystem": {"write"}
در مانیفست نیاز دارد. فقط برای برنامههای کیوسک در حال اجرا در جلسه کیوسک موجود است. برای حالت کیوسک راهاندازی دستی، یک گفتگوی تأیید در بالای پنجره فعال برنامه نشان داده میشود. در صورت بروز خطا، fileSystem
تعریف نشده و chrome.runtime.lastError
تنظیم می شود.
پارامترها
- گزینه ها
- پاسخ به تماس
عملکرد اختیاری
پارامتر
callback
به نظر می رسد:(fileSystem?: FileSystem) => void
- فایل سیستم
FileSystem اختیاری است
برمی گرداند
Promise<FileSystem | تعریف نشده>
Chrome 117+Promises فقط برای Manifest V3 و نسخههای جدیدتر پشتیبانی میشود، پلتفرمهای دیگر باید از callback استفاده کنند.
restoreEntry()
chrome.fileSystem.restoreEntry(
id: string,
callback: function,
)
در صورت امکان بازیابی، ورودی فایل را با شناسه داده شده برمی گرداند. در غیر این صورت این تماس با خطای زمان اجرا ناموفق خواهد بود.
پارامترها
- شناسه
رشته
- پاسخ به تماس
تابع
پارامتر
callback
به نظر می رسد:(entry: Entry) => void
- ورود
ورود
retainEntry()
chrome.fileSystem.retainEntry(
entry: Entry,
)
شناسهای را برمیگرداند که میتوان آن را به restoreEntry ارسال کرد تا دوباره به ورودی فایل معین دسترسی پیدا کند. فقط 500 ورودی که اخیراً استفاده شده است حفظ میشوند، جایی که تماسهای RetainEntry و restoreEntry به عنوان استفاده محسوب میشوند. اگر برنامه مجوز «retainEntries» را در «FileSystem» داشته باشد، ورودیها بهطور نامحدود حفظ میشوند. در غیر این صورت، ورودیها فقط در حین اجرای برنامه و در طول راهاندازی مجدد، حفظ میشوند.
پارامترها
- ورود
ورود
برمی گرداند
رشته
رویدادها
onVolumeListChanged
chrome.fileSystem.onVolumeListChanged.addListener(
callback: function,
)
هنگامی که فهرستی از حجم های موجود تغییر می کند، فراخوانی می شود.
پارامترها
- پاسخ به تماس
تابع
پارامتر
callback
به نظر می رسد:(event: VolumeListChangedEvent) => void
- رویداد