کتابخانه‌ی استاندارد · سیستم و ابزار

پرونده fs/file

خواندن و نوشتن پرونده، اطلاعات پرونده، رونوشت و جابه‌جایی، و چکیده‌ی MD5 و SHA.

واردسازی سیستم پرونده.پرونده
در این صفحه
  1. گونه‌ها
  2. روال‌ها

بسته‌ی پرونده کامل‌ترین ابزار کار با پرونده‌هاست. برای نوشتن تنظیمات و داده‌های مهم، نوشتن اتمی را به کار ببرید: اول در پرونده‌ای موقت می‌نویسد و بعد جایگزین می‌کند، پس اگر برنامه وسط کار قطع شود، پرونده‌ی نیمه‌کاره‌ای باقی نمی‌ماند.

گونه‌ها

اطلاعات پرونده FileInfo

ساختار اطلاعات پرونده
اطلاعات یک پرونده.
نامانگلیسیگونهتوضیح
sizesizeصحیح۶۴ = 0اندازه بر حسب بایت.
mod_timemod_timeصحیح۶۴ = 0زمان آخرین تغییر.
accessed_timeaccessed_timeصحیح۶۴ = 0زمان آخرین دسترسی.
created_timecreated_timeصحیح۶۴ = 0زمان ایجاد.
permissionspermissionsصحیح = 0مجوزها، با رقم‌های هشت‌هشتی.
existsexistsمنطقی = نادرستاگر پرونده وجود داشته باشد، درست است.
fs-file-Stat.salam
واردسازی سیستم پرونده.پرونده

روال ریشه:
    پرونده.نوشتن متن("عکس.png"، "PNG")
    و۱ := پرونده.وضعیت("عکس.png")
    سرچاپ و۱.exists، و۱.size، و۱.mod_time > ۰، و۱.permissions > ۰
    سرچاپ پرونده.اندازه("عکس.png")، پرونده.وجود دارد("عکس.png")
    سرچاپ پرونده.زمان تغییر("عکس.png") > ۰، پرونده.زمان دسترسی("عکس.png") > ۰، پرونده.زمان ایجاد("عکس.png") >= ۰
    پرونده.تغییر مجوز("عکس.png"، 0o600)
    سرچاپ پرونده.مجوزها("عکس.png")
    سرچاپ پرونده.پسوند("عکس.png")، پرونده.نوع مایم("عکس.png")، پرونده.نوع مایم("نامه.pdf")
    سرچاپ پرونده.وضعیت("نیست.txt").exists
پایان
خروجیtrue 3 true true 3 true true true true 600 .png image/png application/pdf false

روال‌ها

بازکردن Open

روال بازکردن(path: رشته، mode: رشته): پرونده*
پرونده را برای کار تکه‌تکه باز می‌کند؛ حالت‌ها مثل سیستم عامل.بازکردن.
fs-file-ReadText.salam
واردسازی سیستم پرونده.پرونده

روال ریشه:
    پرونده.نوشتن متن("شعر.txt"، "بنی آدم اعضای یکدیگرند\n")
    پرونده.افزودن("شعر.txt"، "که در آفرینش ز یک گوهرند\n")
    چاپ پرونده.خواندن متن("شعر.txt")
    سرچاپ پرونده.خواندن همه("شعر.txt") == پرونده.خواندن متن("شعر.txt")
    خط‌ها := پرونده.خواندن خط‌ها("شعر.txt")
    سرچاپ خط‌ها.طول()، خط‌ها.بگیر(۱)
    پرونده.نوشتن بایت‌ها("داده.bin"، "ABCDEF")
    سرچاپ پرونده.خواندن بایت‌ها("داده.bin"، ۳)
    پرونده.نوشتن اتمی("تنظیمات.txt"، "زبان=فارسی")
    سرچاپ پرونده.خواندن متن("تنظیمات.txt")
    پ := پرونده.بازکردن("شعر.txt"، "rb")
    سرچاپ پ.خواندن خط()
    پرونده.بستن(پ)
پایان
خروجیبنی آدم اعضای یکدیگرند که در آفرینش ز یک گوهرند true 2 که در آفرینش ز یک گوهرند ABC زبان=فارسی بنی آدم اعضای یکدیگرند

بستن Close

روال بستن(f: پرونده*)
پرونده‌ی باز را می‌بندد.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: fs-file-ReadText.salam

خواندن متن ReadText

روال خواندن متن(path: رشته): رشته
کل پرونده را به شکل متن می‌خواند.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: fs-file-ReadText.salam

خواندن همه ReadAll

روال خواندن همه(path: رشته): رشته
کل پرونده را می‌خواند؛ برای پرونده‌های دودویی هم مناسب است.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: fs-file-ReadText.salam

خواندن بایت‌ها ReadBytes

روال خواندن بایت‌ها(path: رشته، n: صحیح): رشته
n بایت اول پرونده را می‌خواند.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: fs-file-ReadText.salam

خواندن خط‌ها ReadLines

روال خواندن خط‌ها(path: رشته): وکتور<رشته>
خط‌های پرونده را در یک وکتور برمی‌گرداند.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: fs-file-ReadText.salam

نوشتن متن WriteText

روال نوشتن متن(path: رشته، data: رشته): صحیح
متن را در پرونده می‌نویسد و محتوای قبلی را جایگزین می‌کند.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: fs-file-ReadText.salam

نوشتن بایت‌ها WriteBytes

روال نوشتن بایت‌ها(path: رشته، data: رشته): صحیح
داده‌ی دودویی را در پرونده می‌نویسد.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: fs-file-ReadText.salam

افزودن Append

روال افزودن(path: رشته، data: رشته): صحیح
به انتهای پرونده اضافه می‌کند.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: fs-file-ReadText.salam

نوشتن اتمی AtomicWrite

روال نوشتن اتمی(path: رشته، data: رشته): صحیح
پرونده را به‌شکل امن و یک‌جا می‌نویسد: یا نسخه‌ی کامل جدید می‌ماند، یا نسخه‌ی قبلی؛ هیچ‌وقت نیمه‌کاره.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: fs-file-ReadText.salam

اندازه Size

روال اندازه(p: رشته): صحیح۶۴
اندازه‌ی پرونده بر حسب بایت.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: fs-file-Stat.salam

زمان تغییر ModTime

روال زمان تغییر(p: رشته): صحیح۶۴
زمان آخرین تغییر.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: fs-file-Stat.salam

زمان دسترسی AccessedTime

روال زمان دسترسی(p: رشته): صحیح۶۴
زمان آخرین دسترسی.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: fs-file-Stat.salam

زمان ایجاد CreatedTime

روال زمان ایجاد(p: رشته): صحیح۶۴
زمان ایجاد.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: fs-file-Stat.salam

مجوزها Permissions

روال مجوزها(p: رشته): صحیح
مجوزها، با رقم‌های هشت‌هشتی.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: fs-file-Stat.salam

تغییر مجوز Chmod

روال تغییر مجوز(p: رشته، mode: صحیح): صحیح
مجوزها را تغییر می‌دهد؛ مقدار را هشت‌هشتی بدهید، مثل 0o600.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: fs-file-Stat.salam

پسوند Extension

روال پسوند(p: رشته): رشته
پسوند پرونده، همراه با نقطه.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: fs-file-Stat.salam

نوع مایم MimeType

روال نوع مایم(p: رشته): رشته
نوع MIME پرونده بر اساس پسوندش؛ برای فرستادن پرونده در وب.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: fs-file-Stat.salam

وضعیت Stat

روال وضعیت(p: رشته): اطلاعات پرونده
همه‌ی اطلاعات پرونده یک‌جا.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: fs-file-Stat.salam

کپی Copy

روال کپی(src: رشته، dst: رشته): صحیح
پرونده را رونوشت می‌کند.
fs-file-Copy.salam
واردسازی سیستم پرونده.پرونده

روال ریشه:
    پرونده.نوشتن متن("اصلی.txt"، "سلام")
    پرونده.کپی("اصلی.txt"، "رونوشت.txt")
    پرونده.جابجایی("رونوشت.txt"، "جابه‌جا.txt")
    پرونده.تغییر نام("جابه‌جا.txt"، "نهایی.txt")
    سرچاپ پرونده.وجود دارد("رونوشت.txt")، پرونده.وجود دارد("نهایی.txt")، پرونده.خواندن متن("نهایی.txt")
    پرونده.حذف("نهایی.txt")
    سرچاپ پرونده.وجود دارد("نهایی.txt")
پایان
خروجیfalse true سلام false

جابجایی Move

روال جابجایی(src: رشته، dst: رشته): صحیح
پرونده را جابه‌جا می‌کند.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: fs-file-Copy.salam

تغییر نام Rename

روال تغییر نام(src: رشته، dst: رشته): صحیح
نام پرونده را عوض می‌کند.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: fs-file-Copy.salam

حذف Delete

روال حذف(p: رشته): صحیح
پرونده را حذف می‌کند.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: fs-file-Copy.salam

وجود دارد Exists

روال وجود دارد(p: رشته): منطقی
اگر پرونده وجود داشته باشد، درست برمی‌گرداند.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: fs-file-Stat.salam

هش ام‌دی۵ Md5Hex

روال هش ام‌دی۵(p: رشته): رشته
چکیده‌ی MD5 محتوای پرونده؛ فقط برای مقایسه‌ی سریع، نه امنیت.
fs-file-Sha256Hex.salam
واردسازی سیستم پرونده.پرونده

روال ریشه:
    پرونده.نوشتن متن("پیام.txt"، "abc")
    سرچاپ پرونده.هش ام‌دی۵("پیام.txt")
    سرچاپ پرونده.هش شا۱("پیام.txt")
    سرچاپ پرونده.هش شا۲۵۶("پیام.txt")
    سرچاپ پرونده.هش شا۵۱۲("پیام.txt").طول()
پایان
خروجی900150983cd24fb0d6963f7d28e17f72 a9993e364706816aba3e25717850c26c9cd0d89d ba7816bf8f01cfea414140de5dae2223b00361a396177a9cb410ff61f20015ad 128

هش شا۱ Sha1Hex

روال هش شا۱(p: رشته): رشته
چکیده‌ی SHA-1 محتوای پرونده.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: fs-file-Sha256Hex.salam

هش شا۲۵۶ Sha256Hex

روال هش شا۲۵۶(p: رشته): رشته
چکیده‌ی SHA-256 محتوای پرونده؛ برای بررسی سالم بودن پرونده‌ی دانلودشده.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: fs-file-Sha256Hex.salam

هش شا۵۱۲ Sha512Hex

روال هش شا۵۱۲(p: رشته): رشته
چکیده‌ی SHA-512 محتوای پرونده.

نمونه‌ی این مورد همراه با موارد بالاتر آمده است: fs-file-Sha256Hex.salam