C语言创建指定大小的txt文件

      近来需要测试网络的下载速率,自己搭了个服务器,好让客户端可以从服务器下载文件测试下载性能。需要准备些固定大小的文件,例如600k、4M等大小的文件。

      思路很简单,C中一个 char类型占 1 byte,所以我们可以根据我们的需要在一个txt文件中输入一定数量的char字符来获得指定大小的文件。用输入的文件大小命名文件。

      1 M = 1024 K = 1024 byte

#include <stdio.h>
#include <string.h>

int main(void)
{
    int targetSize = 0; //size unit is byte
    char targetSizeStr[10];  //size unit is K / M
    
    printf("please enter the target size! size unit is K or M; you need to enter the unit and care the spelling of the unit\n");
    scanf("%s",targetSizeStr);
    
    FILE *file = fopen(targetSizeStr,"w+");
    
    if(file == NULL)
    {
        printf("open error!\n");
        return 0;
    }
    int length = strlen(targetSizeStr);
    int i = 0,j = 10;
    for (i = 0; i < length; i++)
    {
    	if (targetSizeStr[i] == 'K')
    	{
    	    targetSize *= 1024;
    	    break;
    	}
    	if (targetSizeStr[i] == 'M')
    	{
    	    targetSize *= (1024 * 1024);
    	    break;
    	}
    	int number = targetSizeStr[i] - '0';
    	targetSize = targetSize * j + number;
    }
    
    for (i = 0; i < targetSize; i++)
    {
    	fprintf(file,"%c",'0');
    }
    
    fclose(file);
    
    return 0;
}

初始文件大小
运行参数
运行结果

  • 1
    点赞
  • 13
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

我要出家当道士

打赏是不可能,这辈子都不可能

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值