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

如何从txt文件中读取字符串并将其存储到char数组中

从txt文件中读取字符串并将其存储到char数组中,可以通过以下步骤实现:

  1. 打开txt文件:使用文件操作函数或库函数打开txt文件,获取文件指针。
  2. 确定文件大小:通过移动文件指针到文件末尾,然后使用ftell函数获取文件大小。
  3. 创建char数组:根据文件大小动态分配内存,创建一个足够存储字符串的char数组。
  4. 移动文件指针:将文件指针重新移动到文件开头,准备读取文件内容。
  5. 读取文件内容:使用文件操作函数或库函数,逐个字符读取文件内容,并将其存储到char数组中。
  6. 关闭文件:读取完文件内容后,使用文件操作函数或库函数关闭文件。

下面是一个示例代码,演示如何从txt文件中读取字符串并将其存储到char数组中(以C语言为例):

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

int main() {
    FILE *file;
    char *buffer;
    long file_size;

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

    // 确定文件大小
    fseek(file, 0, SEEK_END);
    file_size = ftell(file);
    rewind(file);

    // 创建char数组
    buffer = (char*) malloc(sizeof(char) * (file_size + 1));
    if (buffer == NULL) {
        printf("内存分配失败。\n");
        return 1;
    }

    // 读取文件内容
    fread(buffer, sizeof(char), file_size, file);
    buffer[file_size] = '\0'; // 添加字符串结束符

    // 输出读取到的字符串
    printf("读取到的字符串:%s\n", buffer);

    // 关闭文件
    fclose(file);

    // 释放内存
    free(buffer);

    return 0;
}

在这个示例代码中,我们假设要读取的txt文件名为"example.txt"。你可以根据实际情况修改文件名和路径。

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

相关·内容

C语言文件读写操作(详解)

文件是一段数据的集合,这些数据可以是有规则的,也可以是无序的集合。在stdio.h有一个非常重要的东西,文件指针,每个文件都会在内存中开辟一块空间,用于存放文件的相关信息,这些信息保存在一个结构体中: struct _iobuf { char *_ptr; //指向buffer中第一个未读的字节 int _cnt; //记录剩余的未读字节的个数 char *_base;//文件的缓冲 int _flag;//打开文件的属性 int _file;//获取文件描述 int _charbuf;//单字节的缓冲,即缓冲大小仅为1个字节 int _bufsiz;//记录这个缓冲大小 char *_tmpfname;//临时文件名 }; typedef struct _iobuf FILE; FILE是一个数据结构,用于访问一个流。每个流都会对应一个FILE结构体。

04
领券