पर कनवर्ट करने के लिए कैसे करें Vec<char>
को स्ट्रिंग फॉर्म में कनवर्ट करने के लिए कैसे करें ताकि मैं इसे प्रिंट कर सकूं?Vec <char> को एक स्ट्रिंग
उत्तर
यह उत्तर सही था, लेकिन अब आउट-ऑफ-तिथि है (from_chars
मौजूद नहीं है, और std::strbuf::StrBuf
अब सिर्फ String
है), इसलिए downvote की कोई जरूरत नहीं है। नीचे व्लादिमीर Matveev के जवाब (और upvote) पर एक नज़र डालें।
std::str::from_chars(char_vector.as_slice()); // creates a ~str
char_vector.iter().map(|c| *c).collect::<std::strbuf::StrBuf>();
डॉक्स: std::str::from_chars
(उत्तरार्द्ध, एक ~str
को भी इकट्ठा करने के लिए इस्तेमाल किया जा सकता सिर्फ StrBuf
प्रकार संकेत बदलकर।)
[वीइसी
मेरा उत्तर अपडेट करने से व्लादिमीर के क्रेडिट/वोट लेंगे। – huon
आप जंग के लागू संस्करणों को इंगित करने के साथ उत्तर अद्यतन कर सकते हैं। – courteouselk
जंग 1.0
बहुत ही सरल के लिए अपडेट किया गया, बस पुनरावर्तक पर collect()
का उपयोग करें:
let v = vec!['a', 'b', 'c', 'd'];
let s: String = v.into_iter().collect();
println!("{}", s);
मूल सदिश भस्म हो जाएगा। आप इसे रखने के लिए की जरूरत है, v.iter().cloned()
का उपयोग करें:
let s: String = v.iter().cloned().collect();
कोई और सीधा रास्ता है, क्योंकि char
एक 32-बिट यूनिकोड अदिश मूल्य है, और जंग में तार बाइट्स के दृश्यों कर रहे हैं (u8
) UTF- में पाठ का प्रतिनिधित्व 8 एन्कोडिंग। वे char
एस के अनुक्रमों पर सीधे मैप नहीं करते हैं। जब लिखा
यहाँ एक अधिक पठनीय संस्करण है कि वेक्टर की खपत:
use std::iter::FromIterator;
fn main() {
let v = vec!['a', 'b', 'c', 'd'];
let s = String::from_iter(v);
// vs
let s: String = v.into_iter().collect();
}
ध्यान दें कि collect
FromIterator::from_iter
के लिए एक कॉल के साथ लागू किया जाता है:
fn collect<B: FromIterator<Self::Item>>(self) -> B where Self: Sized {
FromIterator::from_iter(self)
}
- 1. एक मानचित्र <स्ट्रिंग, स्ट्रिंग> को एक POJO
- 2. लिंक एक आईनेमरेबल <शब्दकोश <स्ट्रिंग, स्ट्रिंग >>
- 3. एक स्ट्रिंग
- 4. डेटा सदस्य 'vec' एक सदस्य टेम्पलेट नहीं किया जा सकता
- 5. glm :: vec यूनियन के रूप में vec मानों का प्रतिनिधित्व क्यों करता है?
- 6. रिवर्स बार-बार दोहराना एक और vec बनाम vec.iter()
- 7. मैं एक शब्दकोश <स्ट्रिंग, शब्दकोश <स्ट्रिंग, स्ट्रिंग >> क्यों नहीं बना सकता?
- 8. सी # में सूची <टपल <स्ट्रिंग, स्ट्रिंग >> में एक स्ट्रिंग खोज कैसे
- 9. पायथन के बराबर perl vec() फ़ंक्शन
- 10. std :: वेक्टर: vec.data() या & vec [0]
- 11. स्ट्रिंग डिक्शनरी बनाम <स्ट्रिंग, स्ट्रिंग>
- 12. मैश <स्ट्रिंग, स्ट्रिंग>
- 13. सूची के लिए एक alterantive लिए खोज रहे हैं <KeyValuePair <स्ट्रिंग, KeyValuePair <स्ट्रिंग, स्ट्रिंग >>>
- 14. स्ट्रिंग एक सूची <string>
- 15. एक स्ट्रिंग विभाजक
- 16. डेल्फी संस्करणों में एक यूनिकोड स्ट्रिंग को संभालना <= 2007
- 17. एक स्ट्रिंग को java.util में बदलें। स्ट्रीम <Character>
- 18. एक हैश मैप <स्ट्रिंग, लिंक्डलिस्ट>
- 19. फ़ाइल में 'Vec <u16>' सामग्री लिखने का सही तरीका क्या है?
- 20. केवल एक खाली नक्शा <स्ट्रिंग, स्ट्रिंग>
- 21. IDictionary <स्ट्रिंग, स्ट्रिंग> कुंजी को लोअरकेस (सी #)
- 22. हैशमैप <स्ट्रिंग, सूची <Items>> को पुनर्नवीनीकरण
- 23. एक स्ट्रिंग (सरल प्रश्न) रिवर्स
- 24. सूची <मानचित्र <स्ट्रिंग, स्ट्रिंग >> बनाम सूची
- 25. स्ट्रिंग टेम्पलेट < > को डिलीमीटर
- 26. ArrayList <HashMap <स्ट्रिंग, स्ट्रिंग >> एक गतिविधि से दूसरे
- 27. जेपीए मानचित्र <स्ट्रिंग, स्ट्रिंग> मैपिंग
- 28. आईडीआईआर <स्ट्रिंग, स्ट्रिंग> बनाम शब्दकोश <स्ट्रिंग, स्ट्रिंग>
- 29. deserialize KeyValuePair <स्ट्रिंग, स्ट्रिंग> Json.Net
- 30. कन्वर्ट शब्दकोश <स्ट्रिंग, स्ट्रिंग>
(http://stackoverflow.com/questions/29158406/creating-a-string-from-vecchar) –