{"id":16504,"date":"2024-03-15T13:07:04","date_gmt":"2024-03-15T13:07:04","guid":{"rendered":"https:\/\/www.silicloud.com\/blog\/how-to-read-data-from-a-csv-file-in-the-c-language\/"},"modified":"2025-08-07T03:31:06","modified_gmt":"2025-08-07T03:31:06","slug":"how-to-read-data-from-a-csv-file-in-the-c-language","status":"publish","type":"post","link":"https:\/\/www.silicloud.com\/blog\/how-to-read-data-from-a-csv-file-in-the-c-language\/","title":{"rendered":"How to read data from a CSV file in the C language?"},"content":{"rendered":"<p>To read data from a CSV file in C language, you can follow these steps:<\/p>\n<ol>\n<li>Include the necessary header files:<\/li>\n<\/ol>\n<pre class=\"post-pre\"><code><span class=\"hljs-meta\">#<span class=\"hljs-keyword\">include<\/span> <span class=\"hljs-string\">&lt;stdio.h&gt;<\/span><\/span>\r\n<span class=\"hljs-meta\">#<span class=\"hljs-keyword\">include<\/span> <span class=\"hljs-string\">&lt;stdlib.h&gt;<\/span><\/span>\r\n<span class=\"hljs-meta\">#<span class=\"hljs-keyword\">include<\/span> <span class=\"hljs-string\">&lt;string.h&gt;<\/span><\/span>\r\n<\/code><\/pre>\n<ol>\n<li>Create a structure to store each line of data in a CSV file.<\/li>\n<\/ol>\n<pre class=\"post-pre\"><code><span class=\"hljs-keyword\">typedef<\/span> <span class=\"hljs-class\"><span class=\"hljs-keyword\">struct<\/span> {<\/span>\r\n    <span class=\"hljs-type\">char<\/span> field1[<span class=\"hljs-number\">100<\/span>];\r\n    <span class=\"hljs-type\">char<\/span> field2[<span class=\"hljs-number\">100<\/span>];\r\n    <span class=\"hljs-comment\">\/\/ \u53ef\u4ee5\u6839\u636e\u9700\u8981\u6dfb\u52a0\u66f4\u591a\u7684\u5b57\u6bb5<\/span>\r\n} CSVData;\r\n<\/code><\/pre>\n<ol>\n<li>Write a function to read data from a CSV file.<\/li>\n<\/ol>\n<pre class=\"post-pre\"><code><span class=\"hljs-type\">void<\/span> <span class=\"hljs-title function_\">readCSV<\/span><span class=\"hljs-params\">(<span class=\"hljs-type\">const<\/span> <span class=\"hljs-type\">char<\/span>* filename, CSVData* data, <span class=\"hljs-type\">int<\/span>* num_rows)<\/span> {\r\n    FILE* file = fopen(filename, <span class=\"hljs-string\">\"r\"<\/span>);\r\n    <span class=\"hljs-keyword\">if<\/span> (file == <span class=\"hljs-literal\">NULL<\/span>) {\r\n        <span class=\"hljs-built_in\">printf<\/span>(<span class=\"hljs-string\">\"\u65e0\u6cd5\u6253\u5f00\u6587\u4ef6\u3002\\n\"<\/span>);\r\n        <span class=\"hljs-keyword\">return<\/span>;\r\n    }\r\n\r\n    <span class=\"hljs-type\">char<\/span> line[<span class=\"hljs-number\">256<\/span>];\r\n    <span class=\"hljs-type\">int<\/span> i = <span class=\"hljs-number\">0<\/span>;\r\n\r\n    <span class=\"hljs-keyword\">while<\/span> (fgets(line, <span class=\"hljs-keyword\">sizeof<\/span>(line), file)) {\r\n        <span class=\"hljs-comment\">\/\/ \u4f7f\u7528strtok\u51fd\u6570\u6309\u7167\u9017\u53f7\u5206\u9694\u6bcf\u4e2a\u5b57\u6bb5<\/span>\r\n        <span class=\"hljs-type\">char<\/span>* token = strtok(line, <span class=\"hljs-string\">\",\"<\/span>);\r\n        <span class=\"hljs-built_in\">strcpy<\/span>(data[i].field1, token);\r\n        token = strtok(<span class=\"hljs-literal\">NULL<\/span>, <span class=\"hljs-string\">\",\"<\/span>);\r\n        <span class=\"hljs-built_in\">strcpy<\/span>(data[i].field2, token);\r\n        <span class=\"hljs-comment\">\/\/ \u53ef\u4ee5\u6839\u636e\u9700\u8981\u7ee7\u7eed\u8bfb\u53d6\u66f4\u591a\u7684\u5b57\u6bb5<\/span>\r\n\r\n        i++;\r\n    }\r\n\r\n    *num_rows = i;\r\n\r\n    fclose(file);\r\n}\r\n<\/code><\/pre>\n<ol>\n<li>Use the above function to read data from the CSV file.<\/li>\n<\/ol>\n<pre class=\"post-pre\"><code><span class=\"hljs-type\">int<\/span> <span class=\"hljs-title function_\">main<\/span><span class=\"hljs-params\">()<\/span> {\r\n    CSVData data[<span class=\"hljs-number\">100<\/span>];\r\n    <span class=\"hljs-type\">int<\/span> num_rows;\r\n    readCSV(<span class=\"hljs-string\">\"data.csv\"<\/span>, data, &amp;num_rows);\r\n\r\n    <span class=\"hljs-comment\">\/\/ \u6253\u5370\u8bfb\u53d6\u5230\u7684\u6570\u636e<\/span>\r\n    <span class=\"hljs-keyword\">for<\/span> (<span class=\"hljs-type\">int<\/span> i = <span class=\"hljs-number\">0<\/span>; i &lt; num_rows; i++) {\r\n        <span class=\"hljs-built_in\">printf<\/span>(<span class=\"hljs-string\">\"\u7b2c %d \u884c\u6570\u636e\uff1a\\n\"<\/span>, i+<span class=\"hljs-number\">1<\/span>);\r\n        <span class=\"hljs-built_in\">printf<\/span>(<span class=\"hljs-string\">\"\u5b57\u6bb51\uff1a%s\\n\"<\/span>, data[i].field1);\r\n        <span class=\"hljs-built_in\">printf<\/span>(<span class=\"hljs-string\">\"\u5b57\u6bb52\uff1a%s\\n\"<\/span>, data[i].field2);\r\n        <span class=\"hljs-comment\">\/\/ \u53ef\u4ee5\u6839\u636e\u9700\u8981\u6253\u5370\u66f4\u591a\u7684\u5b57\u6bb5<\/span>\r\n        <span class=\"hljs-built_in\">printf<\/span>(<span class=\"hljs-string\">\"\\n\"<\/span>);\r\n    }\r\n\r\n    <span class=\"hljs-keyword\">return<\/span> <span class=\"hljs-number\">0<\/span>;\r\n}\r\n<\/code><\/pre>\n<p>The above code assumes that each row in the CSV file only has two fields, which can be adjusted according to the actual situation. Additionally, it is necessary to ensure that the CSV file exists and is in the correct format.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>To read data from a CSV file in C language, you can follow these steps: Include the necessary header files: #include &lt;stdio.h&gt; #include &lt;stdlib.h&gt; #include &lt;string.h&gt; Create a structure to store each line of data in a CSV file. typedef struct { char field1[100]; char field2[100]; \/\/ \u53ef\u4ee5\u6839\u636e\u9700\u8981\u6dfb\u52a0\u66f4\u591a\u7684\u5b57\u6bb5 } CSVData; Write a function to read [&hellip;]<\/p>\n","protected":false},"author":8,"featured_media":0,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_import_markdown_pro_load_document_selector":0,"_import_markdown_pro_submit_text_textarea":"","footnotes":""},"categories":[1],"tags":[453,1402,299,1404,1403],"class_list":["post-16504","post","type-post","status-publish","format-standard","hentry","category-uncategorized","tag-development","tag-guide","tag-programming","tag-technology","tag-tutorial"],"yoast_head":"<!-- This site is optimized with the Yoast SEO Premium plugin v21.5 (Yoast SEO v21.5) - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>How to read data from a CSV file in the C language? - Blog - Silicon Cloud<\/title>\n<meta name=\"description\" content=\"Learn about how to read data from a csv file in the c language?. Comprehensive guide with examples and best practices.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/www.silicloud.com\/blog\/how-to-read-data-from-a-csv-file-in-the-c-language\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"How to read data from a CSV file in the C language?\" \/>\n<meta property=\"og:description\" content=\"Learn about how to read data from a csv file in the c language?. Comprehensive guide with examples and best practices.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.silicloud.com\/blog\/how-to-read-data-from-a-csv-file-in-the-c-language\/\" \/>\n<meta property=\"og:site_name\" content=\"Blog - Silicon Cloud\" \/>\n<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/SiliCloudGlobal\/\" \/>\n<meta property=\"article:published_time\" content=\"2024-03-15T13:07:04+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2025-08-07T03:31:06+00:00\" \/>\n<meta name=\"author\" content=\"William Carter\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:creator\" content=\"@SiliCloudGlobal\" \/>\n<meta name=\"twitter:site\" content=\"@SiliCloudGlobal\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"William Carter\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"1 minute\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/www.silicloud.com\/blog\/how-to-read-data-from-a-csv-file-in-the-c-language\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/www.silicloud.com\/blog\/how-to-read-data-from-a-csv-file-in-the-c-language\/\"},\"author\":{\"name\":\"William Carter\",\"@id\":\"https:\/\/www.silicloud.com\/blog\/#\/schema\/person\/f697031891aacefc4b681d139781d3c0\"},\"headline\":\"How to read data from a CSV file in the C language?\",\"datePublished\":\"2024-03-15T13:07:04+00:00\",\"dateModified\":\"2025-08-07T03:31:06+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/www.silicloud.com\/blog\/how-to-read-data-from-a-csv-file-in-the-c-language\/\"},\"wordCount\":107,\"publisher\":{\"@id\":\"https:\/\/www.silicloud.com\/blog\/#organization\"},\"keywords\":[\"Development\",\"guide\",\"programming\",\"technology\",\"tutorial\"],\"inLanguage\":\"en-US\"},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/www.silicloud.com\/blog\/how-to-read-data-from-a-csv-file-in-the-c-language\/\",\"url\":\"https:\/\/www.silicloud.com\/blog\/how-to-read-data-from-a-csv-file-in-the-c-language\/\",\"name\":\"How to read data from a CSV file in the C language? - Blog - Silicon Cloud\",\"isPartOf\":{\"@id\":\"https:\/\/www.silicloud.com\/blog\/#website\"},\"datePublished\":\"2024-03-15T13:07:04+00:00\",\"dateModified\":\"2025-08-07T03:31:06+00:00\",\"description\":\"Learn about how to read data from a csv file in the c language?. Comprehensive guide with examples and best practices.\",\"breadcrumb\":{\"@id\":\"https:\/\/www.silicloud.com\/blog\/how-to-read-data-from-a-csv-file-in-the-c-language\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/www.silicloud.com\/blog\/how-to-read-data-from-a-csv-file-in-the-c-language\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/www.silicloud.com\/blog\/how-to-read-data-from-a-csv-file-in-the-c-language\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/www.silicloud.com\/blog\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"How to read data from a CSV file in the C language?\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/www.silicloud.com\/blog\/#website\",\"url\":\"https:\/\/www.silicloud.com\/blog\/\",\"name\":\"Silicon Cloud Blog\",\"description\":\"\",\"publisher\":{\"@id\":\"https:\/\/www.silicloud.com\/blog\/#organization\"},\"inLanguage\":\"en-US\"},{\"@type\":\"Organization\",\"@id\":\"https:\/\/www.silicloud.com\/blog\/#organization\",\"name\":\"Silicon Cloud Blog\",\"url\":\"https:\/\/www.silicloud.com\/blog\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/www.silicloud.com\/blog\/#\/schema\/logo\/image\/\",\"url\":\"https:\/\/www.silicloud.com\/blog\/wp-content\/uploads\/2023\/11\/EN-SILICON-Full.png\",\"contentUrl\":\"https:\/\/www.silicloud.com\/blog\/wp-content\/uploads\/2023\/11\/EN-SILICON-Full.png\",\"width\":1024,\"height\":1024,\"caption\":\"Silicon Cloud Blog\"},\"image\":{\"@id\":\"https:\/\/www.silicloud.com\/blog\/#\/schema\/logo\/image\/\"},\"sameAs\":[\"https:\/\/www.facebook.com\/SiliCloudGlobal\/\",\"https:\/\/twitter.com\/SiliCloudGlobal\"]},{\"@type\":\"Person\",\"@id\":\"https:\/\/www.silicloud.com\/blog\/#\/schema\/person\/f697031891aacefc4b681d139781d3c0\",\"name\":\"William Carter\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/www.silicloud.com\/blog\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/1786698071dd8d74bec894b512f9e3c610c3a2a32985f67e688976cee3c8bbef?s=96&d=mm&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/1786698071dd8d74bec894b512f9e3c610c3a2a32985f67e688976cee3c8bbef?s=96&d=mm&r=g\",\"caption\":\"William Carter\"},\"url\":\"https:\/\/www.silicloud.com\/blog\/author\/williamcarter\/\"}]}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"How to read data from a CSV file in the C language? - Blog - Silicon Cloud","description":"Learn about how to read data from a csv file in the c language?. Comprehensive guide with examples and best practices.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/www.silicloud.com\/blog\/how-to-read-data-from-a-csv-file-in-the-c-language\/","og_locale":"en_US","og_type":"article","og_title":"How to read data from a CSV file in the C language?","og_description":"Learn about how to read data from a csv file in the c language?. Comprehensive guide with examples and best practices.","og_url":"https:\/\/www.silicloud.com\/blog\/how-to-read-data-from-a-csv-file-in-the-c-language\/","og_site_name":"Blog - Silicon Cloud","article_publisher":"https:\/\/www.facebook.com\/SiliCloudGlobal\/","article_published_time":"2024-03-15T13:07:04+00:00","article_modified_time":"2025-08-07T03:31:06+00:00","author":"William Carter","twitter_card":"summary_large_image","twitter_creator":"@SiliCloudGlobal","twitter_site":"@SiliCloudGlobal","twitter_misc":{"Written by":"William Carter","Est. reading time":"1 minute"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/www.silicloud.com\/blog\/how-to-read-data-from-a-csv-file-in-the-c-language\/#article","isPartOf":{"@id":"https:\/\/www.silicloud.com\/blog\/how-to-read-data-from-a-csv-file-in-the-c-language\/"},"author":{"name":"William Carter","@id":"https:\/\/www.silicloud.com\/blog\/#\/schema\/person\/f697031891aacefc4b681d139781d3c0"},"headline":"How to read data from a CSV file in the C language?","datePublished":"2024-03-15T13:07:04+00:00","dateModified":"2025-08-07T03:31:06+00:00","mainEntityOfPage":{"@id":"https:\/\/www.silicloud.com\/blog\/how-to-read-data-from-a-csv-file-in-the-c-language\/"},"wordCount":107,"publisher":{"@id":"https:\/\/www.silicloud.com\/blog\/#organization"},"keywords":["Development","guide","programming","technology","tutorial"],"inLanguage":"en-US"},{"@type":"WebPage","@id":"https:\/\/www.silicloud.com\/blog\/how-to-read-data-from-a-csv-file-in-the-c-language\/","url":"https:\/\/www.silicloud.com\/blog\/how-to-read-data-from-a-csv-file-in-the-c-language\/","name":"How to read data from a CSV file in the C language? - Blog - Silicon Cloud","isPartOf":{"@id":"https:\/\/www.silicloud.com\/blog\/#website"},"datePublished":"2024-03-15T13:07:04+00:00","dateModified":"2025-08-07T03:31:06+00:00","description":"Learn about how to read data from a csv file in the c language?. Comprehensive guide with examples and best practices.","breadcrumb":{"@id":"https:\/\/www.silicloud.com\/blog\/how-to-read-data-from-a-csv-file-in-the-c-language\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.silicloud.com\/blog\/how-to-read-data-from-a-csv-file-in-the-c-language\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/www.silicloud.com\/blog\/how-to-read-data-from-a-csv-file-in-the-c-language\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/www.silicloud.com\/blog\/"},{"@type":"ListItem","position":2,"name":"How to read data from a CSV file in the C language?"}]},{"@type":"WebSite","@id":"https:\/\/www.silicloud.com\/blog\/#website","url":"https:\/\/www.silicloud.com\/blog\/","name":"Silicon Cloud Blog","description":"","publisher":{"@id":"https:\/\/www.silicloud.com\/blog\/#organization"},"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/www.silicloud.com\/blog\/#organization","name":"Silicon Cloud Blog","url":"https:\/\/www.silicloud.com\/blog\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.silicloud.com\/blog\/#\/schema\/logo\/image\/","url":"https:\/\/www.silicloud.com\/blog\/wp-content\/uploads\/2023\/11\/EN-SILICON-Full.png","contentUrl":"https:\/\/www.silicloud.com\/blog\/wp-content\/uploads\/2023\/11\/EN-SILICON-Full.png","width":1024,"height":1024,"caption":"Silicon Cloud Blog"},"image":{"@id":"https:\/\/www.silicloud.com\/blog\/#\/schema\/logo\/image\/"},"sameAs":["https:\/\/www.facebook.com\/SiliCloudGlobal\/","https:\/\/twitter.com\/SiliCloudGlobal"]},{"@type":"Person","@id":"https:\/\/www.silicloud.com\/blog\/#\/schema\/person\/f697031891aacefc4b681d139781d3c0","name":"William Carter","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.silicloud.com\/blog\/#\/schema\/person\/image\/","url":"https:\/\/secure.gravatar.com\/avatar\/1786698071dd8d74bec894b512f9e3c610c3a2a32985f67e688976cee3c8bbef?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/1786698071dd8d74bec894b512f9e3c610c3a2a32985f67e688976cee3c8bbef?s=96&d=mm&r=g","caption":"William Carter"},"url":"https:\/\/www.silicloud.com\/blog\/author\/williamcarter\/"}]}},"_links":{"self":[{"href":"https:\/\/www.silicloud.com\/blog\/wp-json\/wp\/v2\/posts\/16504","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.silicloud.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.silicloud.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.silicloud.com\/blog\/wp-json\/wp\/v2\/users\/8"}],"replies":[{"embeddable":true,"href":"https:\/\/www.silicloud.com\/blog\/wp-json\/wp\/v2\/comments?post=16504"}],"version-history":[{"count":1,"href":"https:\/\/www.silicloud.com\/blog\/wp-json\/wp\/v2\/posts\/16504\/revisions"}],"predecessor-version":[{"id":50055,"href":"https:\/\/www.silicloud.com\/blog\/wp-json\/wp\/v2\/posts\/16504\/revisions\/50055"}],"wp:attachment":[{"href":"https:\/\/www.silicloud.com\/blog\/wp-json\/wp\/v2\/media?parent=16504"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.silicloud.com\/blog\/wp-json\/wp\/v2\/categories?post=16504"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.silicloud.com\/blog\/wp-json\/wp\/v2\/tags?post=16504"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}