يعد العمل مع الملفات والأدلة مهمة أساسية للتطبيقات التي تحتاج إلى تخزين البيانات واستردادها. يوفر Go حزمة مسار الملف لعمليات مسار الملف المستقل عن النظام الأساسي. تتضمن الحزمة وظائف لمعالجة مسارات الملفات وهي متوافقة مع أنظمة التشغيل Windows و Linux و macOS.
يمكن للوظائف التي يتضمنها filepath ضم مسارات الملفات وتقسيمها وتنظيفها للتأكد من أنها صالحة. تحتوي الحزمة أيضًا على وظائف لأدلة المشي والبحث عن الملفات.
اجعل فيديو اليوم
المشي دليل الأشجار
ال يمشي وظيفة مسار الملف توفر الحزمة وظائف للمشي في شجرة الدليل والانتقال عبر الملفات والأدلة بطريقة الطلب المسبق. سيقوم بشكل متكرر بزيارة كافة الدلائل الموجودة أسفل الجذر المحدد. تأخذ وظيفة Walk في الدليل الجذر والدالة التي تأخذ المسار ومثيل معلومات الملف ومثيل الخطأ.
package main
import (
"fmt"
"path/filepath"
"os"
)
func main() {
// Defines the root directory to start the walk
root := "."
// Uses the Walk function to walk the directory tree
err := filepath.Walk(root, func(path string, info os.FileInfo, err error) error {
if err != nil {
return err
}
// Prints the name of each file or directory
fmt.Println(path)
return nil
})
// Checks for errors
if err != nil {
fmt.Printf("Error walking directory tree: %v\n", err)
}
}
يعرّف هذا البرنامج الدليل الجذر كدليل العمل الحالي. ال رئيسي تعبر الدالة من خلال الدلائل في الدليل الجذر وتطبع أسماء الملفات.
مطابقة الملفات مع مطابقة الأنماط
يمكنك استخدام ال مباراة وظيفة لمطابقة أسماء الملفات مع نمط. يعتمد بناء جملة النمط على العام صيغة ملف البدل ، والتي تستخدم الحروف الأولية ، والمعروفة باسم أنماط الكرة الأرضية في بيئات Unix.
package main
import (
"fmt"
"path/filepath"
)
func main() {
// Defines the pattern to match
pattern := "*.txt"
// Uses the Match function to match the pattern on files
match, err := filepath.Match(pattern, "file.txt")
if err != nil {
fmt.Printf("Error matching pattern: %v\n", err)
return
}
// Prints the result of the match
if match {
fmt.Println("File matches pattern.")
} else {
fmt.Println("File does not match pattern.")
}
}
ال رئيسي تتطابق الوظيفة مع اسم ملف مقابل الامتداد *.رسالة قصيرة نمط وطباعة سلسلة حسب نتيجة البيان الشرطي .
كيفية إضافة نص على tiktok
تنظيف المسارات بوظيفة التنظيف
ال ينظف تأخذ الوظيفة مسار ملف وتعيد إصدارًا نظيفًا من المسار عن طريق إزالة الفواصل غير الضرورية وتغييرات الدليل ، مثل . (الدليل الحالي) و .. (الدليل الأصلي).
يعد تنظيف مسارات الملفات مفيدًا لأنه يساعد في تجنب الأخطاء إذا كان المسار يحتوي على فواصل متكررة أو مقاطع غير صالحة ، أو يبني مسارات مستقلة عن دليل العمل الحالي.
package main
import (
"fmt"
"path/filepath"
)
func main() {
// Creates a path with redundant separators and invalid segments
path := "/foo/bar//baz/.././qux/"
// Cleans the path
cleanPath := filepath.Clean(path)
// Prints the original and cleaned file paths
fmt.Println("Original path:", path)
fmt.Println("Cleaned path:", cleanPath)
}
ال طريق المتغير هو مسار الملف الأولي ، و ينظف وظيفة ينظف طريق متغير ويعيد مسار الملف الذي تم تنظيفه. ال رئيسي تقوم الوظيفة بطباعة مسارات الملفات الأولية والنظيفة.
الانضمام إلى مسارات الملفات وتقسيمها في Go
ال ينضم و ينقسم توفر الوظائف وظائف لضم مسارات الملفات وتقسيمها.
تأخذ وظيفة الانضمام أي عدد من عناصر المسار. يقوم بإرجاع سلسلة مسار ملف واحد ينتج عن ربط تلك العناصر باستخدام فاصل المسار المناسب لنظام التشغيل. ال ينضم الوظيفة مفيدة لإنشاء مسارات ملفات مستقلة عن نظام الملفات الأساسي.
package main
import (
"fmt"
"path/filepath"
)
func main() {
// Defines four file paths for the join operation
path1 := "folder1"
path2 := "folder2"
path3 := "subfolder1"
path4 := "example.txt"
// Joins the four file paths together into a single path
joinedPath := filepath.Join(path1, path2, path3, path4)
// Print the unified file path
fmt.Println("Joined Path:", joinedPath)
}
ال المسار 1 و المسار 2 ، و المسار 3 المتغيرات هي أسماء المجلدات ، و المسار 4 المتغير هو اسم ملف. ال ينضم تأخذ الدالة أسماء متغيرات المسار وتعيد مسار الملف المتسلسل. ال رئيسي تقوم الوظيفة بطباعة مسار الملف المتسلسل إلى وحدة التحكم باستخدام ملحق FMT طَرد.
ال ينقسم تأخذ الدالة سلسلة مسار وتقوم بإرجاع دليل المسار ومكونات اسم الملف. ال ينقسم الوظيفة مفيدة لاستخراج أسماء الملفات أو تحديد الدليل الأصل لملف.
كيفية إعادة ضبط ps4 لإعدادات المصنع
package main
import (
"fmt"
"path/filepath"
)
func main() {
// Sets the file path for the split operation
filePath := "/home/user/documents/example.txt"
// Use the Split function to split the file path
// into its directory and file components
dir, file := filepath.Split(filePath)
// Print the directory and file components
fmt.Println("Directory:", dir)
fmt.Println("File:", file)
}
ال مسار الملف المتغير هو مسار الملف الأصلي ، و ينقسم تأخذ الوظيفة في مسار الملف متغير وإرجاع أسماء الدلائل والملفات كسلاسل. ال رئيسي تقوم الوظيفة بطباعة أسماء الدليل والملفات إلى وحدة التحكم.
يمكنك معالجة الملفات النصية باستخدام Go
إلى جانب وظائف نظام الملفات ، يوفر Go حزمًا لمساعدتك في العمل مع أنواع ملفات متعددة ، بما في ذلك الملفات النصية.
يمكنك استخدام ال بوفيو حزمة لعمليات الإدخال والإخراج المخزنة على الملفات النصية وملفات أنت حزمة لإنشاء الملفات ، من بين عمليات أخرى.