c语言读取txt文件到数组

在C语言中,读取文本文件到数组的方法如下:

打开文件:

使用`fopen`函数打开文件,并检查是否成功打开。

读取文件内容:

使用`fgets`或`fscanf`函数逐行或逐字段读取文件内容。

存储内容到数组:

将读取到的内容存储到预先定义的数组中。

以下是一个简单的示例代码,展示如何将文本文件的内容读取到一维数组中:

c

include

include

include

define MAX_LINE 1024

int main() {

char filename[] = "example.txt";

FILE *fp;

char buf[MAX_LINE];

int i = 0;

int num_elements = 0;

int capacity = 0;

// 打开文件

fp = fopen(filename, "r");

if (fp == NULL) {

perror("Failed to open file");

exit(EXIT_FAILURE);

}

// 逐行读取文件内容

while (fgets(buf, sizeof(buf), fp) != NULL) {

// 如果数组已满,则增加容量

if (num_elements == capacity) {

capacity += MAX_LINE;

buf = realloc(buf, capacity);

if (buf == NULL) {

perror("Failed to allocate memory");

exit(EXIT_FAILURE);

}

}

// 将读取到的内容存储到数组中

buf[num_elements++] = '0'; // 添加字符串结束符

// 这里可以添加其他处理逻辑,例如将buf中的内容转换为整数并存储到另一个数组中

}

// 关闭文件

fclose(fp);

// 打印读取到的内容

for (i = 0; i < num_elements; i++) {

printf("%s", buf[i]);

}

// 释放动态分配的内存

free(buf);

return 0;

}

如果需要将文件内容读取到二维数组中,可以类似地扩展代码,动态分配二维数组的内存,并逐行读取和存储数据。

以下是一个将文本文件内容读取到二维数组的示例:

以上内容仅供参考,部分文章是来自自研大数据AI进行生成,内容摘自(百度百科,百度知道,头条百科,中国民法典,刑法,牛津词典,新华词典,汉语词典,国家院校,科普平台)等数据,内容仅供学习参考,不准确地方联系删除处理!

为你推荐