C ifstream के साथ एक टेक्स्ट फ़ाइल से पूर्णांक पढ़ें
एक टेक्स्ट फ़ाइल से वेक्टर में ग्राफ़ आसन्न जानकारी को पुनर्प्राप्त करना और संग्रहीत करना एक चुनौती प्रस्तुत करता है जब परिवर्तनीय पूर्णांक गणना की पंक्तियों से निपटना। यहां C के ifstream का उपयोग करके एक व्यापक समाधान दिया गया है:
पारंपरिक दृष्टिकोण में getline() का उपयोग करके प्रत्येक पंक्ति को पढ़ना और लाइन को पार्स करने के लिए एक इनपुट स्ट्रिंग स्ट्रीम को नियोजित करना शामिल है। यह तकनीक पूर्णांकों की सुसंगत संख्या वाली रेखाओं के लिए अच्छी तरह से काम करती है।
#include
#include
#include
std::ifstream infile("text_file.txt");
std::string line;
while (std::getline(infile, line)) {
std::istringstream iss(line);
int n;
std::vector v;
while (iss >> n) {
v.push_back(n);
}
// Process the vector v
}
हालांकि, यदि आपके पास अलग-अलग पूर्णांक गणना वाली रेखाएं हैं, तो एक-पंक्ति समाधान है जो लूप और 'स्टे' मुहावरे का लाभ उठाता है, ल्यूक डेंटन के सौजन्य से:
#include
#include
#include
int main() {
std::vector<:vector>> vv;
for (std::string line;
std::getline(std::cin, line);
vv.push_back(std::vector(std::istream_iterator(std::move(std::istringstream(line))),
std::istream_iterator()))
);
// Process the vector of vectors vv
}
इस स्निपेट में, 'स्टे' मुहावरा यह सुनिश्चित करता है कि प्रदान किया गया लैवल्यू संदर्भ इस कदम के बाद भी वैध बना रहे। दक्षता के लिए यह कदम आवश्यक है, क्योंकि यह अनावश्यक चरित्र नकल से बचाता है।
ये समाधान एक टेक्स्ट फ़ाइल से पूर्णांक निकालने और उन्हें वेक्टर में संग्रहीत करने के लिए कुशल और बहुमुखी तरीके प्रदान करते हैं, भले ही पंक्तियों में एकरूपता हो या पूर्णांकों की अलग-अलग संख्या।
अस्वीकरण: उपलब्ध कराए गए सभी संसाधन आंशिक रूप से इंटरनेट से हैं। यदि आपके कॉपीराइट या अन्य अधिकारों और हितों का कोई उल्लंघन होता है, तो कृपया विस्तृत कारण बताएं और कॉपीराइट या अधिकारों और हितों का प्रमाण प्रदान करें और फिर इसे ईमेल पर भेजें: [email protected] हम इसे आपके लिए यथाशीघ्र संभालेंगे।
Copyright© 2022 湘ICP备2022001581号-3