C++操作文件——文件指针

std::string path="./abc.txt"
//文件指针
FILE* pagefile; //文件指针
if (fopen_s(&pagefile, path.c_str(), "wb")!=0) //w:写,b:二进制
{
		std::cout << "读取失败" << std::endl;
}

//---------------------------------------------------------------
fwrite(const void *ptr, size_t size, size_t nmemb, FILE *stream)

    ptr -- 这是指向要被写入的元素数组的指针。
    size -- 这是要被写入的每个元素的大小,以字节为单位。
    nmemb -- 这是元素的个数,每个元素的大小为 size 字节。
    stream -- 这是指向 FILE 对象的指针,该 FILE 对象指定了一个输出流。
例子:
	const char* str = "Hello, World!";
    FILE* file = fopen("output.txt", "wb");

    if (file != NULL) {
        size_t len = strlen(str);
        size_t written = fwrite(str, sizeof(char), len, file);

        if (written == len) {
            printf("写入文件成功!\n");
        } else {
            printf("写入文件失败!\n");
        }

        fclose(file);
    } else {
        printf("无法打开文件!\n");
    }
    
//---------------------------------------------------------------
size_t fread(void *ptr, size_t size, size_t nmemb, FILE *stream)

    ptr -- 这是指向带有最小尺寸 size*nmemb 字节的内存块的指针。
    size -- 这是要读取的每个元素的大小,以字节为单位。
    nmemb -- 这是元素的个数,每个元素的大小为 size 字节。
    stream -- 这是指向 FILE 对象的指针,该 FILE 对象指定了一个输入流。
例子:
    char buffer[100];
    FILE* file = fopen("input.txt", "rb");

    if (file != NULL) {
        size_t read = fread(buffer, sizeof(char), 100, file);

        if (read > 0) {
            printf("读取成功!\n");
            printf("读取的数据是:%s\n", buffer);
        } else {
            printf("读取失败或到达文件末尾!\n");
        }

        fclose(file);
    } else {
        printf("无法打开文件!\n");
    }

fclose(pagefile);
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值