>> स्पीकर 1: चलो एक प्रोग्राम लिखने करते हैं कि नाम के लिए उपयोगकर्ता और संकेत देता है
तीन छात्रों के घरों.
लेकिन बजाय सिर्फ बाहर प्रिंट उनके स्क्रीन करने के लिए नाम और घरों, चलो
बजाय डिस्क को उस जानकारी को बचाने के.
दूसरे शब्दों में, एक सीएसवी, कहते हैं, के पैदा करते हैं फ़ाइल, अल्पविराम से अलग मूल्यों के लिए,
वास्तव में सिर्फ एक पाठ फ़ाइल है जो कि एक्सेल या संख्याओं जैसे कार्यक्रमों
खोलने, और प्रभावी ढंग से उन बचा सकते हैं नाम और घरों स्थायी रूप से इतना है कि
हम उन्हें बाद में समीक्षा कर सकते हैं.
>> ऐसा करने के लिए, की पहली पर एक नज़र मैं है कि कुछ boilerplate कोड
पहले से ही के साथ शुरू कर दिया.
पहला कि हेडर के बीच सूचना शीर्ष अब मानक lib.h है जो
संबंधित कुछ कार्यों के लिए होता है मैं / हे, फ़ाइल इनपुट और आउटपुट फाइल करने के लिए.
मैं भी घोषित कर दिया है कि नोटिस छात्रों नामक एक निरंतर -
सभी टोपियां में - जिसका मूल्य मुश्किल के रूप में तीन कोडित है.
अब मेरी मुख्य की कि अंदर नोटिस कार्यक्रम, मैं की एक सरणी की घोषणा कर रहा हूँ
आकार तीन बुलाया कि निरंतर का उपयोग छात्रों जिसका सदस्यों में से प्रत्येक की है
छात्रों लिखें.
>> एक छात्र हम निर्धारित करेंगे कि अब याद एक नाम और एक घर दोनों के होने के रूप में
इस प्रति के रूप में तार कर रहे हैं जो घोषणा, डॉट घंटे निर्देश देता है.
अब वापस structs1.c में, नोटिस कि मैं एक पाश के लिए है कि यहाँ जा रहा है है
तीन अप करने के लिए शून्य से पुनरावृति.
यह एक छात्र के लिए मुझे संकेत जा रहा है नाम और एक छात्र के घर
फिर और फिर और फिर.
>> तो इस कार्यक्रम के तल पर, मैं पाश के लिए एक और है कि नोटिस
कि मुक्त करने के लिए जा रहा है ith छात्र की नाम और एक में ith छात्र के घर
इसी पाश का निर्माण किया.
यह सुनिश्चित हो, हम उन छोरों को जोड़ सकता है सिर्फ एक है, लेकिन मैं चाहता था करने में
कोड की कुछ अलग क्षेत्रों है यहां चर्चा के लिए.
>> अब छोरों के लिए उन के बीच में है, चलो वास्तव में एक और है, और यह एक
जीवन में उद्देश्य वास्तव में सभी को बचाने के लिए है कर रहे हैं कि इन नामों और घरों की
वर्तमान फॉर्म में डिस्क को रैम में अल्पविराम से अलग मूल्यों की.
ऐसा करने के लिए, हम उपयोग करने के लिए जा रहे हैं तीन नए कार्य -
एफ खुला, एफ printf, और एफ करीब है, जो , एक फ़ाइल खोलने एक फाइल करने के लिए प्रिंट, और
एक फाइल को बंद करें.
हम के रूप में उन्हें इस्तेमाल कर सकते हैं.
>> फ़ाइल, सभी टोपियां में, जो कुछ हद तक की है सी में एक जिज्ञासा, फ़ाइल fopen हो जाता है
बोली गंदें शब्द बोलना और के लिए अब एक नाम students.CSV, कहते हैं, फाइल, लेकिन मैं कर सकता
सबसे कुछ अल्पविराम इसे कहते हैं और अब मैं कर रहा हूँ अंदर डब्ल्यू एक भी निर्दिष्ट करने के लिए जा रहा
दोहरे उद्धरण चिह्नों की.
डब्ल्यू, आप पहले से ही अंदाज़ा लगा सकते है, fopen इस फाइल को खोलने चाहिए कि इसका मतलब
इतना लिखने के लिए Students.CSV बुलाया हम वास्तव में कुछ बचा सकता है
यह करने के लिए सामग्री.
>> चलो आगे चेक अगर फ़ाइल अशक्त करने के बराबर नहीं है.
अगर ऐसा है, कुछ शायद है क्योंकि जो मामले में गलत हो गया हम
प्रयास करने के लिए आगे नहीं बढ़ना चाहिए यह करने के लिए कुछ भी मुद्रित करने के लिए.
लेकिन यह रिक्त नहीं है, तो के अंदर मैं पुनरावृति करने के लिए जा रहा हूँ घुंघराले ब्रेसिज़
मैं छात्रों को ऊपर की ओर 0 के बराबर होती है, से और मैं जा रहा हूँ
मैं प्रत्येक यात्रा पर वेतन वृद्धि.
और इस लूप के अंदर, मैं जा रहा हूँ fprintf एक फ़ाइल को मुद्रित करने के लिए इतनी के रूप में -
विशेष रूप से एक मैं पहले से ही खोला -
इस% s% s की तरह लग रहा है कि एक स्ट्रिंग बैकस्लैश n बंद बोली.
>> और अब मैं प्रत्येक के लिए में प्लग करना चाहते हैं उन प्लेसहोल्डर वास्तविक मूल्यों
एक छात्र का नाम और एक घर की डॉट ऑपरेटर का उपयोग कर.
छात्र ब्रैकेट i.name, छात्रों ब्रैकेट i.house करीब कोष्ठक
अर्ध विराम.
अब पाश के लिए यह नीचे, मैं बस हूँ आदेश में फ़ाइल की fclose फोन करने वाला
अंततः फाइल बंद करने के लिए.
>> मैं इस कार्यक्रम को चलाने के अब, जब मैं नहीं करना चाहिए वास्तव में कुछ भी नहीं देख
स्क्रीन, लेकिन मैं होना चाहिए चलने के बाद इस कार्यक्रम नामक एक फाइल
एक ही निर्देशिका में Students.CSV कि मुझे लगता है कि होना चाहिए में आदेश चलाएँ
अलग कर एक अल्पविराम होते मानों की सूची.
चलो एक नज़र रखना.
>> बनाओ structs 1. / Structs1 छात्र की , डेविड कहते हैं, का नाम
वह माथर में रहेंगे.
छात्र का नाम, चलो कहते हैं, लॉरेन, वह Leverett में रहेंगे.
छात्र का नाम, चलो कहते हैं, रोब, वह किर्कलैंड में रहेंगे.
अब, फिर से, उम्मीद के रूप में, कुछ भी नहीं दिखाई देता है हुआ, लेकिन चलो है मुझे
कमांड प्रॉम्प्ट और प्रकार आगे बढ़ो उम्मीद में जी संपादित students.CSV कि
उस फ़ाइल वास्तव में मौजूद है.
>> Gedit students.CSV करें, और वास्तव में, सूचना है कि विशुद्ध रूप से युक्त एक फाइल
पाठ, लेकिन पाठ अल्पविराम के द्वारा अलग प्रत्येक क्षेत्र के लिए, वास्तव में मौजूद है.
और हम CS50, नहीं इस्तेमाल कर रहे थे उपकरण, लेकिन एक अधिक परिचित मैक या
पीसी, यह पता चला है कि हम वास्तव में कर सकता है एक अधिक के साथ इस सीएसवी फाइल को खोलने
एक्सेल या नंबर की तरह परिचित कार्यक्रम.