在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; } 如果需要将文件内容读取到二维数组中,可以类似地扩展代码,动态分配二维数组的内存,并逐行读取和存储数据。 以下是一个将文本文件内容读取到二维数组的示例:


