به دست آوردن اطلاعات در مورد فایل

در Ruby متدهایی وجود دارند که در مورد فایل ها اطلاعات مفیدی در اختیار ما قرار می دهند. در این درس می خواهیم در مورد کلاس File و متدهایی که در آن برای کار با فایل ها وجود دارد، توضیح دهیم. در داخل کلاس File یک متد به نام ?exist وجود دارد که از آن برای تشخیص اینکه آیا یک فایل یا پوشه وجود دارد یا نه استفاده می شود:

File.exist?("D:\\Sample.txt")
true

کد بالا تست می کند که آیا فایلی به نام Sample.txt در درایو D وجود دارد یا خیر. اگر وجود داشته باشد، مقدار True در غیر اینصورت مقدار False را بر می گرداند. این پکیج دارای متدهای دیگری برای تشخیص اندازه، زمان ایجاد و دستکاری فایل یا پوشه می باشد:

puts File.size("D:\\Sample.txt")
puts File.atime("D:\\Sample.txt")
puts File.mtime("D:\\Sample.txt")
puts File.ctime("D:\\Sample.txt")
0
1485232367.5112433
1523422066.2938774
1485232367.5112433

مقدار بازگشتی 0 یعنی اینکه فایل 0 بایت می باشد.

  • ()size : اندازه فایل بر حسب بایت را نشان می دهد.
  • ()atime : زمان آخرین دسترسی به فایل مثلا خواندن آن را نمایش می دهد.
  • ()mtime : زمان آخرین تغییر در فایل مثلا زمان ایجاد و نوشتن در آن را نمایش می دهد.
  • ()ctime : زمان آخرین تغییر در فایل مثلا زمان ایجاد و نوشتن در آن را نمایش می دهد.

به دست آوردن نام فایل و پوشه

برای استخراج نام یک فایل یا پوشه از متد ()basename مربوط به کلاس File استفاده می کنیم :

puts File.basename("D:\\Sample.txt")
Sample.txt