आप जैसे पाठक MUO का समर्थन करने में मदद करते हैं। जब आप हमारी साइट पर लिंक का उपयोग करके खरीदारी करते हैं, तो हम संबद्ध कमीशन अर्जित कर सकते हैं। और पढ़ें।

फ़ाइलों और निर्देशिकाओं के साथ काम करना उन अनुप्रयोगों के लिए एक आवश्यक कार्य है जिन्हें डेटा को संग्रहीत करने और पुनः प्राप्त करने की आवश्यकता होती है। गो प्लेटफ़ॉर्म-स्वतंत्र फ़ाइल पथ संचालन के लिए फ़ाइलपथ पैकेज प्रदान करता है। पैकेज में फ़ाइल पथों में हेरफेर करने के कार्य शामिल हैं और यह विंडोज, लिनक्स और मैकओएस के साथ संगत है।

फ़ाइलपथ में शामिल फ़ंक्शंस शामिल हो सकते हैं, विभाजित हो सकते हैं और यह सुनिश्चित करने के लिए फ़ाइल पथ साफ़ कर सकते हैं कि वे मान्य हैं। पैकेज में चलने वाली निर्देशिकाओं और फाइलों की खोज के लिए भी कार्य हैं।

चलना निर्देशिका पेड़

टहलना का कार्य दस्तावेज पथ पैकेज एक डायरेक्टरी ट्री चलने और फाइलों और निर्देशिकाओं के माध्यम से पूर्व-आदेश तरीके से चलने के लिए कार्यक्षमता प्रदान करता है। यह दिए गए रूट के नीचे सभी निर्देशिकाओं पर पुनरावर्ती रूप से जाएगा। वॉक फ़ंक्शन एक रूट डायरेक्टरी और एक फ़ंक्शन लेता है जो पथ, फ़ाइल जानकारी उदाहरण और एक त्रुटि उदाहरण लेता है।

पैकेट मुख्य

आयात (
"एफएमटी"
"पथ/फ़ाइलपथ"
"ओएस"
)

समारोहमुख्य() {
// वॉक शुरू करने के लिए रूट डायरेक्टरी को परिभाषित करें
जड़ := "."

// डायरेक्टरी ट्री को वॉक करने के लिए वॉक फंक्शन का उपयोग करता है
त्रुटि: = फ़ाइलपथ। चलना (जड़, समारोह(पथ डोरी, सूचना ओएस। FileInfo, त्रुटि त्रुटि)गलती {
अगर गलती! = शून्य {
वापस करना ग़लती होना
}

// प्रत्येक फ़ाइल या निर्देशिका का नाम प्रिंट करता है
fmt. Println (पथ)
वापस करनाशून्य
})

// त्रुटियों के लिए जाँच करता है
अगर गलती! = शून्य {
fmt. प्रिंटफ("निर्देशिका ट्री चलने में त्रुटि: %v\n", गलती)
}
}

यह प्रोग्राम रूट डायरेक्टरी को वर्तमान वर्किंग डायरेक्टरी के रूप में परिभाषित करता है। मुख्य फ़ंक्शन रूट निर्देशिका में निर्देशिकाओं के माध्यम से ट्रैवर्स करता है और फ़ाइलों के नाम प्रिंट करता है।

पैटर्न मिलान के साथ फाइलों का मिलान

आप उपयोग कर सकते हैं मिलान एक पैटर्न के विरुद्ध फ़ाइल नामों का मिलान करने के लिए कार्य। पैटर्न सिंटैक्स सामान्य पर आधारित है फ़ाइल वाइल्डकार्ड सिंटैक्स, जो मेटाचैकर का उपयोग करता है, यूनिक्स वातावरण में ग्लोब पैटर्न के रूप में जाना जाता है।

पैकेट मुख्य

आयात (
"एफएमटी"
"पथ/फ़ाइलपथ"
)

समारोहमुख्य() {
// मिलान करने के लिए पैटर्न को परिभाषित करता है
पैटर्न := "*।TXT"

// फाइलों पर पैटर्न से मिलान करने के लिए मैच फ़ंक्शन का उपयोग करता है
मैच, त्रुटि: = फ़ाइलपथ। मैच (पैटर्न, "file.txt")

अगर गलती! = शून्य {
fmt. प्रिंटफ("त्रुटि मिलान पैटर्न: %v\n", गलती)
वापस करना
}

// मैच का परिणाम प्रिंट करता है
अगर मिलान {
fmt. प्रिंटलन("फ़ाइल पैटर्न से मेल खाती है।")
} अन्य {
fmt. प्रिंटलन("फ़ाइल पैटर्न से मेल नहीं खाती।")
}
}

मुख्य फ़ंक्शन फ़ाइल नाम से मेल खाता है *।TXT पैटर्न और के परिणाम के आधार पर एक स्ट्रिंग प्रिंट करता है सशर्त बयान.

क्लीन फंक्शन के साथ रास्तों की सफाई

साफ़ फ़ंक्शन एक फ़ाइल पथ लेता है और अनावश्यक विभाजकों और निर्देशिका परिवर्तनों को हटाकर पथ का एक साफ संस्करण लौटाता है, जैसे . (वर्तमान निर्देशिका) और .. (मूल निर्देशिका) खंड।

फ़ाइल पथों को साफ करना उपयोगी है क्योंकि यह त्रुटियों से बचने में मदद करता है यदि पथ में अनावश्यक विभाजक या अमान्य खंड हैं, या वर्तमान कार्यशील निर्देशिका से स्वतंत्र पथ का निर्माण करता है।

पैकेट मुख्य

आयात (
"एफएमटी"
"पथ/फ़ाइलपथ"
)

समारोहमुख्य() {
// अनावश्यक विभाजक और अमान्य सेगमेंट के साथ पथ बनाता है
मार्ग := "/foo/bar//baz/.././qux/"

// रास्ता साफ करता है
क्लीनपाथ: = फ़ाइलपथ. स्वच्छ (पथ)

// मूल और साफ किए गए फ़ाइल पथ को प्रिंट करता है
fmt. प्रिंटलन("मूल पथ:", पथ)
fmt. प्रिंटलन("साफ़ रास्ता:", क्लीनपाथ)
}

पथ चर प्रारंभिक फ़ाइल पथ है, और साफ़ समारोह साफ करता है पथ चर और साफ फ़ाइल पथ लौटाता है। मुख्य फ़ंक्शन प्रारंभिक और स्वच्छ फ़ाइल पथ प्रिंट करता है।

गो में फ़ाइल पथों को जोड़ना और विभाजित करना

जोड़ना और विभाजित करना फ़ंक्शन फ़ाइल पथों को जोड़ने और विभाजित करने के लिए कार्यक्षमता प्रदान करते हैं।

जॉइन फ़ंक्शन किसी भी संख्या में पथ तत्वों को लेता है। यह एक एकल फ़ाइल पथ स्ट्रिंग देता है जो ऑपरेटिंग सिस्टम के लिए उपयुक्त पथ विभाजक का उपयोग करके उन तत्वों को जोड़ने से उत्पन्न होता है। जोड़ना फ़ंक्शन अंतर्निहित फ़ाइल सिस्टम से स्वतंत्र फ़ाइल पथ बनाने के लिए उपयोगी है।

पैकेट मुख्य

आयात (
"एफएमटी"
"पथ/फ़ाइलपथ"
)

समारोहमुख्य() {
// ज्वाइन ऑपरेशन के लिए चार फाइल पाथ को परिभाषित करता है
पथ 1: = "फ़ोल्डर1"
पथ 2: = "फ़ोल्डर 2"
पथ3:= "उपफोल्डर1"
पथ 4: = "example.txt"

// चार फ़ाइल पथों को एक पथ में एक साथ जोड़ता है
जॉइनपाथ: = फ़ाइलपथ। शामिल हों (पथ 1, पथ 2, पथ 3, पथ 4)

// एकीकृत फ़ाइल पथ प्रिंट करें
fmt. प्रिंटलन("शामिल पथ:", ज्वाइनपाथ)
}

पथ1, पथ2, और पथ3 चर फ़ोल्डर नाम हैं, और पथ4 चर एक फ़ाइल नाम है। जोड़ना फ़ंक्शन पथ चर नाम लेता है और समेकित फ़ाइल पथ लौटाता है। मुख्य फ़ंक्शन समेकित फ़ाइल पथ को कंसोल के साथ प्रिंट करता है fmt पैकेट।

विभाजित करना फ़ंक्शन एक पथ स्ट्रिंग लेता है और पथ की निर्देशिका और फ़ाइल नाम घटक लौटाता है। विभाजित करना फ़ंक्शन फ़ाइल नाम निकालने या फ़ाइल की मूल निर्देशिका निर्धारित करने के लिए उपयोगी है।

पैकेट मुख्य

आयात (
"एफएमटी"
"पथ/फ़ाइलपथ"
)

समारोहमुख्य() {
// विभाजन ऑपरेशन के लिए फ़ाइल पथ सेट करें
फ़ाइलपथ: = "/घर/उपयोगकर्ता/दस्तावेज़/example.txt"

// फ़ाइल पथ को विभाजित करने के लिए स्प्लिट फ़ंक्शन का उपयोग करें
// इसकी निर्देशिका और फ़ाइल घटकों में
डीआईआर, फ़ाइल: = फ़ाइलपथ. विभाजन (फ़ाइलपथ)

// निर्देशिका और फ़ाइल घटकों को प्रिंट करें
fmt. प्रिंटलन("निर्देशिका:", निदेश)
fmt. प्रिंटलन("फ़ाइल:", फ़ाइल)
}

दस्तावेज पथ चर मूल फ़ाइल पथ है, और विभाजित करना समारोह में लेता है दस्तावेज पथ चर और निर्देशिका और फ़ाइल नाम को स्ट्रिंग्स के रूप में लौटाता है। मुख्य फ़ंक्शन निर्देशिका और फ़ाइल नामों को कंसोल पर प्रिंट करता है।

आप जाने के साथ पाठ फ़ाइलों में हेरफेर कर सकते हैं

फाइल सिस्टम की कार्यक्षमता के साथ, गो पाठ फ़ाइलों सहित कई फ़ाइल प्रकारों के साथ काम करने में आपकी मदद करने के लिए पैकेज प्रदान करता है।

आप उपयोग कर सकते हैं bufio पाठ फ़ाइलों पर बफ़र्ड इनपुट और आउटपुट संचालन के लिए पैकेज और ओएस फ़ाइलें बनाने के लिए पैकेज, अन्य कार्यों के बीच।