文件的压缩C语言代码
时间: 2024-01-22 07:02:13 浏览: 26
以下是一个简单的文件压缩的 C 语言代码示例:
```c
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#define MAX_LEN 1000
void compressFile(char *fileName)
{
FILE *inputFile = fopen(fileName, "rb");
if (inputFile == NULL)
{
printf("Unable to open file!");
return;
}
char outputFileName[MAX_LEN];
strcpy(outputFileName, fileName);
strcat(outputFileName, ".gz");
FILE *outputFile = fopen(outputFileName, "wb");
if (outputFile == NULL)
{
printf("Unable to create compressed file!");
return;
}
char buffer[MAX_LEN];
int bytesRead;
while ((bytesRead = fread(buffer, 1, MAX_LEN, inputFile)) > 0)
{
fwrite(buffer, 1, bytesRead, outputFile);
}
fclose(inputFile);
fclose(outputFile);
printf("File compressed successfully!");
}
int main()
{
char fileName[MAX_LEN];
printf("Enter the name of the file to compress: ");
scanf("%s", fileName);
compressFile(fileName);
return 0;
}
```
此代码将读取指定的文件,将其压缩为 gzip 格式,并将压缩后的文件保存在与输入文件相同的目录中。请注意,此代码仅提供了基本的文件压缩功能,实际的文件压缩程序可能需要更复杂的算法和技术来实现更好的压缩率。