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 में यह सही तरीके से कैसे करें? अधिमानतः उदाहरणों के साथ। पहले से धन्यवाद!