Avatar ·

Go में निर्देशिका में फ़ाइलों और फ़ोल्डरों की सूची कैसे प्राप्त करें: पूर्ण गाइड

सभी को नमस्ते! मैं Go में नया हूँ और एक सरल कार्य हल करने की कोशिश कर रहा हूँ: किसी दी गई निर्देशिका में सभी फ़ाइलों और उपफ़ोल्डरों की सूची प्राप्त करना। मैंने `ioutil.ReadDir` फ़ंक्शन का उपयोग करने की कोशिश की, लेकिन यह deprecated के रूप में चिह्नित है। फिर मुझे `os.ReadDir` मिला, लेकिन मुझे पूरी तरह से समझ नहीं आया कि इसके साथ कैसे काम करना है। यहाँ मैंने जो प्रयास किया: ```go package main import ( "fmt" "io/ioutil" ) func main() { files, err := ioutil.ReadDir(".") if err != nil { fmt.Println("त्रुटि:", err) return } for _, f := range files { fmt.Println(f.Name()) } } ``` कोड कंपाइल होता है, लेकिन IDE `ioutil.ReadDir` को रेखांकित करता है और कहता है कि यह deprecated है। मैं आधुनिक दृष्टिकोण का उपयोग करना चाहता हूँ। इसके अलावा, मुझे चाहिए: 1. केवल फ़ाइलें प्राप्त करें (फ़ोल्डरों के बिना)। 2. केवल फ़ोल्डर प्राप्त करें। 3. सभी उपनिर्देशिकाओं को रिकर्सिवली ट्रैवर्स करें। 4. एक्सटेंशन के अनुसार फ़िल्टर करें (उदाहरण के लिए, केवल `.go` फ़ाइलें)। कृपया बताएं कि Go में यह सही तरीके से कैसे करें? अधिमानतः उदाहरणों के साथ। पहले से धन्यवाद!