मैं प्लेटफ़ॉर्म विशिष्ट निर्देशिका के साथ यूनिक्स और विंडोज पर path.Dir()
का उपयोग करना चाहता हूं। कृपया कोड पर एक नज़र डालें:गोलांग: क्रॉस प्लेटफ़ॉर्म पथ। डीआईआर
package main
import (
"fmt"
"path"
)
func main() {
fmt.Println(`path.Dir("a/b/c"): `, path.Dir("a/b/c"))
fmt.Println(`path.Dir("c:\foo\bar.exe"): `, path.Dir(`c:\foo\bar.exe`))
}
यह आउटपुट
path.Dir("a/b/c"): a/b
path.Dir("c:\foo\bar.exe"): .
मैं की तरह
c:\foo
यह है करने के लिए path.Dir()
(विंडोज़) कुछ दूसरी कॉल के लिए प्राप्त करना चाहते हैं विंडोज़ पर चल रहे मेरे प्रोग्राम के लिए विंडोज सेपरेटर्स का उपयोग करने के लिए path.dir()
बताना संभव है? या क्या मुझे हमेशा स्लैश (/
) अग्रेषित करने के लिए बैकस्लैश \
को परिवर्तित करना चाहिए? यहां पसंदीदा रणनीति क्या है?
यह ध्यान देने योग्य 'पथ' के लिए पैकेज सिंहावलोकन कहा गया है कि है कि यह स्लेश अलग रास्तों और 'पथ/filepath' के लिए है लायक है ओएस-विशिष्ट है। इसके अलावा, अगर आपको इसकी आवश्यकता है, तो filepath.ToSlash() और filepath.FromSlash() को स्लैश से अलग और ओएस-विशिष्ट में कनवर्ट करने के लिए उपयोग किया जा सकता है। –
@RunningWild अच्छी सलाह, धन्यवाद। मैं, एक गैर-देशी वक्ता के रूप में, मानता हूं कि "स्लैश अलग पथ" दोनों का अर्थ हो सकता है (पीछे और आगे स्लेश)। अब मैं बेहतर जानता हूँ। – topskip