क्या गोलांग में string
को io.Writer
प्रकार में परिवर्तित करना संभव है?गोलांग कनवर्ट स्ट्रिंग को io.Writer?
मैं इस स्ट्रिंग का उपयोग fmt.Fprintf()
में करूँगा लेकिन मैं इस प्रकार को रूपांतरित करने में असमर्थ हूं।
क्या गोलांग में string
को io.Writer
प्रकार में परिवर्तित करना संभव है?गोलांग कनवर्ट स्ट्रिंग को io.Writer?
मैं इस स्ट्रिंग का उपयोग fmt.Fprintf()
में करूँगा लेकिन मैं इस प्रकार को रूपांतरित करने में असमर्थ हूं।
आप गो में string
, string
एस में लिख नहीं सकते हैं अपरिवर्तनीय हैं।
सबसे अच्छा विकल्प bytes.Buffer
प्रकार है: यह लागू करता io.Writer
ताकि आप इसे में लिख सकते हैं, और आप Buffer.String()
साथ या Buffer.Bytes()
के साथ एक बाइट टुकड़ा के रूप में एक string
के रूप में अपनी सामग्री प्राप्त कर सकते हैं।
s := "Hello"
buf := bytes.NewBufferString(s)
fmt.Fprint(buf, ", World!")
fmt.Println(buf.String())
आउटपुट (Go Playground पर यह कोशिश):
Hello, World!
आप तो
तुम भी बफर के एक string
के रूप में प्रारंभिक सामग्री यदि आप bytes.NewBufferString()
साथ बफर बनाने में हो सकता है string
प्रकार के एक चर को जोड़ना चाहते हैं, आप बस Buffer.WriteString()
:
s2 := "to be appended"
buf.WriteString(s2)
01 का उपयोग कर सकते हैं
या:
fmt.Fprint(buf, s2)
भी ध्यान रखें कि अगर आप सिर्फ श्रेणीबद्ध करने के लिए 2 string
रों चाहते हैं, आप एक बफर बना सकते हैं और fmt.Fprintf()
उपयोग करने के लिए की जरूरत नहीं है, तो आप बस उन्हें श्रेणीबद्ध करने के लिए +
ऑपरेटर का उपयोग कर सकते हैं:
s := "Hello"
s2 := ", World!"
s3 := s + s2 // "Hello, World!"
यह भी देखें: Golang: format a string without printing?
क्या आप मुझे उदाहरण दे सकते हैं कि मैं फ़ंक्शन fmt.Fprintf() फ़ंक्शन में स्ट्रिंग के प्रकार के साथ एक चर का उपयोग कैसे कर सकता हूं। :) – Acidic
fmt.Sprintf का उपयोग क्यों नहीं है()? – Uvelichitel