ไฟล์

วันที่ รายงานปัญหา ดูแหล่งที่มา ตอนกลางคืน · 7.3 · 7.2 · 7.1 · 7.0 · 6.5

ออบเจ็กต์นี้สร้างขึ้นในช่วงการวิเคราะห์เพื่อแสดงไฟล์หรือไดเรกทอรีที่จะอ่านหรือเขียนในระหว่างขั้นตอนการดำเนินการ ไม่ใช่แฮนเดิลไฟล์ที่เปิดอยู่ และจะใช้เพื่ออ่านหรือเขียนเนื้อหาในไฟล์โดยตรงไม่ได้ แต่คุณจะใช้เพื่อสร้างกราฟการดำเนินการในฟังก์ชันการใช้งานกฎได้โดยการส่งต่อไปให้กับฟังก์ชันการสร้างการดำเนินการ ดูข้อมูลเพิ่มเติมได้ที่หน้ากฎ

เมื่อมีการส่ง File ไปยังออบเจ็กต์ Args โดยไม่ใช้ฟังก์ชัน map_each ระบบจะแปลงเป็นสตริงโดยใช้ค่าของช่อง path

สมาชิก

ชื่อฐาน

string File.basename

ชื่อพื้นฐานของไฟล์นี้ นี่คือชื่อไฟล์ภายในไดเรกทอรี

ไดเรกทอรี

string File.dirname

ชื่อของไดเรกทอรีที่มีไฟล์นี้ ซึ่งได้มาจาก path และสัมพันธ์กับไดเรกทอรีการดำเนินการเสมอ

ส่วนขยาย

string File.extension

นามสกุลของไฟล์นี้ ตามหลัง (ไม่รวม) จุดขวาสุด สตริงว่างหากชื่อฐานของไฟล์ไม่มีจุด

is_directory

bool File.is_directory

แสดงค่า "จริง" หากเป็นไดเรกทอรี

is_source

bool File.is_source

แสดงค่า "จริง" หากเป็นไฟล์ต้นฉบับ กล่าวคือไม่ได้สร้างขึ้น

เจ้าของ

Label File.owner

ป้ายกำกับของเป้าหมายที่สร้างไฟล์นี้ อาจส่งคืน None

เส้นทาง

string File.path

เส้นทางการดำเนินการของไฟล์นี้ ซึ่งสัมพันธ์กับไดเรกทอรีการดำเนินการของพื้นที่ทำงาน ซึ่งประกอบด้วย 2 ส่วน ส่วนแรกซึ่งไม่บังคับเรียกว่าราก (ดูโมดูลรากด้วย) และส่วนที่ 2 คือ short_path รูทอาจว่างเปล่า ซึ่งโดยปกติแล้วจะมีไว้สำหรับไฟล์ที่ไม่ได้สร้างขึ้น สำหรับไฟล์ที่สร้างขึ้น ไฟล์มักจะมีส่วนย่อยของเส้นทางเฉพาะการกำหนดค่าที่จะเข้ารหัสสิ่งต่างๆ เช่น สถาปัตยกรรม CPU เป้าหมายที่ใช้ขณะสร้างไฟล์ดังกล่าว ใช้ short_path สำหรับเส้นทางที่แมปไฟล์ไว้หากไฟล์อยู่ในรันไฟล์ของไบนารี

รูท

root File.root

รูทด้านล่างที่มีไฟล์นี้อยู่

short_path

string File.short_path

เส้นทางของไฟล์นี้ซึ่งเกี่ยวข้องกับรูท ซึ่งจะยกเว้นรากที่กล่าวไว้ข้างต้น ซึ่งก็คือส่วนย่อยของเส้นทางที่เจาะจงการกำหนดค่า นอกจากนี้ เส้นทางนี้ยังเป็นเส้นทางที่ใช้แมปไฟล์หากอยู่ในรันไฟล์ของไบนารีด้วย

tree_relative_path

string File.tree_relative_path

เส้นทางของไฟล์นี้ซึ่งเกี่ยวข้องกับรากของโครงสร้างระดับบน หากช่อง is_directory ระดับบนเป็นจริง tree_relative_path ใช้ได้เฉพาะกับไฟล์แบบขยายของไดเรกทอรีในคำสั่งการดำเนินการ เช่น Args.add_all() สำหรับไฟล์ประเภทอื่นๆ การเข้าถึงช่องนี้เป็นข้อผิดพลาด