מדריך FSO – אוספים (collections)
אוספים (אוספים) הן בעצם רשימה, מערך ובכל פעם שנרצה להשתמש עימן נקרא ונגדיר אותם כאובייקט. הצגת הפלט עם אוספים אלו נעשות עם הלולאה For Each.
לדוגמא: השיטה FSO.Folders תציג את רשימת תת התקיות הקיימות בנתיב מסוים.
האוסף Drives:
אוסף המספק רשימה של כל הכוננים המחוברים למערכת.
כוננים נשלפים וניידים אשר אינם מחוברים למערכת לא יוצגו באוסף הנ"ל.
לאוסף לא קיימות שיטות (מתודות).
דוגמא לשימוש:
Dim Drive, Drives Set Drives = FSO.Drives For Each Drive In Drives Response.Write Drive.DriveLetter & "<Br>" Next Set Drives = Nothing
var drives, x; drives = new Enumerator(fso.Drives); for (; !drives.atEnd(); drives.moveNext()) { x = drives.item(); Response.Write(x.DriveLetter + "<br>"); } delete drives; drives = null;
הדוגמא בעצם עושה לולאה לכל הכוננים הקיימים במחשב/בשרת הווב.
הדפסנו רק שיטה אחת בלולאה (אות הכונן) כאשר יכולנו להדפיס את ה-11 שיטות הנוספות.
האוסף Files:
אוסף המספק רשימה של כל הקבצים הנמצאים בנתיב (תקייה).
לאוסף לא קיימות שיטות (מתודות).
דוגמא לשימוש:
Dim Folder, Files, File Set Folder = FSO.GetFolder(Server.MapPath("/")) Set Files = Folder.Files For Each File In Files Response.Write File.Name & "<Br>" Next Set Files = Nothing Set Folder = Nothing
var folder, files, file, x; folder = fso.GetFolder(Server.MapPath("/")); files = new Enumerator(folder.Files); for (; !files.atEnd(); files.moveNext()) { x = files.item(); Response.Write(x.Name + "<br>"); } delete files; files = null; delete folder; folder = null;
בדוגמא עשינו לולאה עבור כל הקבצים הנמצאים בנתיב מסוים (בדוגמא הנתיב הוא התקייה הראשית) והדפסנו את כל שמות הקבצים.
Folder.Files זוהי שיטה עבור הצגת כל הקבצים הקיימים בנתיב הספציפי שהגדרנו שורה לפני כן.
האוסף Folders:
אוסף המספק רשימה של כל התת תקיות הנמצאות בנתיב (תקייה).
לאוסף לא קיימות שיטות (מתודות).
דוגמא לשימוש:
Dim Folder, SubFolders, SubFolder Set Folder = FSO.GetFolder(Server.MapPath("/")) Set SubFolders = Folder.SubFolders For Each SubFolder In SubFolders Response.Write SubFolder.Name & "<Br>" Next Set SubFolders = Nothing Set Folder = Nothing
var folder, SubFolders, SubFolder, x; folder = fso.GetFolder(Server.MapPath("/")); SubFolders = new Enumerator(folder.SubFolders); for (; !SubFolders.atEnd(); SubFolders.moveNext()) { x = SubFolders.item(); Response.Write(x.Name + "<br>"); } delete SubFolders; SubFolders = null; delete folder; folder = null;
אנחנו מגדירים את Folder על מנת שיכיל את התקייה אשר בה נבצע את הצגת התת תקיות הקיימות בה. SubFolders מכיל את כל התת תקיות הקיימות בתקייה שהגדרנו שורה לפני כן. הדוגמא מבצעת לולאה עבור כל תת תקייה בתוך התקייה הראשית (לשם הדוגמא) והפלט הוא כל שמות התת תקיות הקיימות בנתיב הספציפי.
תגובות בפייסבוק