แก้ไขแล้ว: หากมีไดเร็กทอรีอยู่

การปรับปรุงครั้งล่าสุด: 09/19/2023

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

ตรวจสอบว่ามี Directory อยู่ใน MATLAB หรือไม่

ฟังก์ชัน MATLAB พื้นฐาน 'มีอยู่ (ชื่อไฟล์, 'dir') มักใช้เพื่อตรวจสอบว่ามีไฟล์หรือไดเร็กทอรีอยู่หรือไม่ เมื่อนำไปใช้ ผลลัพธ์ที่ได้จะเป็นค่าตรรกะ 1 หรือ 0 หมายเลข 1 จะถูกส่งกลับเพื่อระบุว่ามีไดเร็กทอรีอยู่ หรือ 0 หากเส้นทางไม่สอดคล้องกับไดเร็กทอรีที่มีอยู่ หรือหากไดเร็กทอรีเป็นฟังก์ชัน MATLAB ที่มาสก์

หากต้องการตรวจสอบว่ามีไดเร็กทอรีอยู่หรือไม่ เพียงใช้โค้ดต่อไปนี้:

function dir_exists = directoryExists(directory)
    dir_exists = exist(directory, 'dir') == 7;
end

คำอธิบายทีละขั้นตอน

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

  • มีอยู่ (ไดเรกทอรี 'dir'): ฟังก์ชัน MATLAB นี้จะตรวจสอบว่าเส้นทางในตัวแปร 'ไดเรกทอรี' มีอยู่และเป็นไดเรกทอรีหรือไม่
  • == 7: โดยใช้ double == เราระบุว่าเราต้องการเปรียบเทียบผลลัพธ์ของฟังก์ชัน 'มีอยู่' ก่อนหน้ากับหมายเลข 7 ค่าที่ส่งคืนเป็น 7 จากฟังก์ชัน 'มีอยู่' แสดงว่าชื่อนั้นมีอยู่และเป็นไดเร็กทอรี
  • dir_มีอยู่: ค่าบูลีนนี้จะเป็น 1 (จริง) หากมีไดเรกทอรีอยู่ และ 0 (เท็จ) มิฉะนั้น ค่านี้สามารถนำมาใช้ในการดำเนินการลอจิกได้ในภายหลัง

จุดที่ต้องพิจารณา

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

อีกประเด็นที่ต้องพิจารณาคือคุณต้องจัดเตรียม ชื่อพาธหรือชื่อไฟล์ที่แน่นอน — MATLAB ไม่รองรับอักขระไวด์การ์ดเช่น '*' และ '?' ในฟังก์ชัน 'มีอยู่'

ฟังก์ชั่นและไลบรารีที่เกี่ยวข้องอื่น ๆ

มีฟังก์ชันอื่นๆ มากมายที่เกี่ยวข้องกับการจัดการไฟล์และเส้นทางใน MATLAB เช่น 'ไอโฟลเดอร์', 'ไอส์ไฟล์', 'เอ็มเคดิร์' (สำหรับการสร้างไดเร็กทอรีใหม่) หรือ 'rmdir' (สำหรับการลบไดเร็กทอรี) สิ่งเหล่านี้อาจมีประโยชน์เมื่อต้องจัดการกับไฟล์และไดเร็กทอรี โปรดทราบว่าฟังก์ชันบางส่วนมีเฉพาะในเวอร์ชัน MATLAB ล่าสุดเท่านั้น ดังนั้นควรตรวจสอบในเอกสารประกอบเสมอว่ามีฟังก์ชันในเวอร์ชัน MATLAB ของคุณหรือไม่

กระทู้ที่เกี่ยวข้อง: