首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

在c中将文本文件读入数组

在C语言中,将文本文件读入数组可以通过以下步骤实现:

  1. 打开文件
  2. 获取文件大小
  3. 创建缓冲区
  4. 读取文件内容到缓冲区
  5. 将缓冲区内容复制到数组中
  6. 关闭文件

以下是一个示例代码:

代码语言:c
复制
#include<stdio.h>
#include <stdlib.h>

int main() {
    FILE *file;
    size_t file_size, read_size;
    char *buffer;
    char *array;

    // 打开文件
    file = fopen("example.txt", "rb");
    if (file == NULL) {
        printf("无法打开文件\n");
        return 1;
    }

    // 获取文件大小
    fseek(file, 0, SEEK_END);
    file_size = ftell(file);
    fseek(file, 0, SEEK_SET);

    // 创建缓冲区
    buffer = (char *)malloc(file_size + 1);
    if (buffer == NULL) {
        printf("无法分配内存\n");
        fclose(file);
        return 1;
    }

    // 读取文件内容到缓冲区
    read_size = fread(buffer, 1, file_size, file);
    if (read_size != file_size) {
        printf("读取文件失败\n");
        free(buffer);
        fclose(file);
        return 1;
    }
    buffer[file_size] = '\0';

    // 将缓冲区内容复制到数组中
    array = (char *)malloc(file_size + 1);
    if (array == NULL) {
        printf("无法分配内存\n");
        free(buffer);
        fclose(file);
        return 1;
    }
    strcpy(array, buffer);

    // 关闭文件
    free(buffer);
    fclose(file);

    // 处理数组
    printf("数组内容:\n%s\n", array);
    free(array);

    return 0;
}

这个示例代码将名为“example.txt”的文件读入一个字符数组中,并输出数组内容。请注意,这个示例代码不会处理文件编码、换行符等问题,因此在实际使用中需要根据具体情况进行调整。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

没有搜到相关的沙龙

领券