當前位置:首頁 » 編程語言 » c語言數據壓縮

c語言數據壓縮

發布時間: 2023-02-24 18:42:26

❶ 用c語言如何對文件進行壓縮

winrar軟體安裝後,所在的安裝目錄下有個rar.exe,開一個命令窗口到該目錄下運行rar
/?就能看到用法了,在你的程序裡面調用它的相應命令行是最簡單的方法,自己編寫壓縮演算法的話,先不談效率,起碼演算法就是相當復雜的了

❷ C語言壓縮

#include<stdio.h>
intmain()
{inti,j;
chars[105];
scanf("%s",s);
for(j=0,i=1;s[i];i++)
{while(s[i]==s[i-1])i++;
printf("%d",i-j);
j=i;
}
printf("%d ",i-j);
return0;
}

❸ 用c語言編譯個簡單壓縮程序

/*
流程是:
1.讀取一個字元,寫入A
2.再讀取一個字元,寫入B
3.判斷AB是否相等,相等轉4,否則轉5
4.一直讀,同時統計數量,直到讀取到和A不相等的字元,將改字元寫入B,轉5
5.將對應數據寫入文件
下面是偽代碼
*/
charA;
charB;
inti;
FilewriteFile;//要寫入的文件
FilereadFile;//要讀的文件
A=readChar(readFile);//讀一個字元
while(文件未讀完){
B=readChar(readFile);//讀一個字元
if(A==B){
i=2;
while((B=readChar(readFile))==A){//一直讀,直到讀取的字元和A不一樣
i++;
}
write(writeFile,A+"$"+i);//i代表重復數量
A=B;
}else{
write(writeFile,A);
A=B;
}
}

❹ 如何用C語言實現數據壓縮

首先你要熟悉套接字的使用,然後要對ftp協議,
包括其中的數據包,通信過程有一定了解。
c語言開發網路程序一般都是用socket套接字這一套函數,你可以去看看資料

❺ C語言都有哪些經典的無損壓縮演算法

C語言經典的無損壓縮演算法有:哈夫曼演算法、LZ。

哈夫曼演算法:
哈夫曼編碼是David A. Huffman於1952年發明的一種滿足對編碼演算法要求的一種編碼演算法。
哈夫曼演算法是利用頻率信息構造一棵二叉樹,頻率高的離根節點近(編碼長度短),頻率低的離根節點遠(編碼長度長),手動構造方法是先將字母按照頻率從小到大排序,然後不斷選擇當前還沒有父節點的節點中權值最小的兩個,構造新的父節點,父節點的值為這兩個節點值的和,直到構造成一棵二叉樹。

LZ演算法:
LZ演算法及其衍生變形演算法是壓縮演算法的一個系列。LZ77和LZ78演算法分別在1977年和1978年被創造出來。雖然他們名字差不多,但是演算法方法完全不同。這一系列演算法主要適用於字母數量有限的信息,比如文字、源碼等。流行的GIF和PNG格式的圖像,使用顏色數量有限的顏色空間,其壓縮就採用了兩種演算法的靈活變形應用。

❻ 360壓縮怎樣壓縮C語言程序

1、在c語言文件或存有c語言文件的文件夾上,
右單擊滑鼠,在彈出的菜單上選擇壓縮到"xxx.zip"
2、打開360壓縮軟體,在工具欄上單擊添加,選擇
c語言文件或文件夾,然後單擊工具欄上的一鍵壓縮。

❼ c語言壓縮包怎樣改成中文

1、首先,需要利用C語言的宏。
2、其次,將一些常見的英文表達。
3、然後,通過define,轉化為中文。壓縮包就是將初始文件經過壓縮形成的文件,壓縮文件內存更小,可以將多個文件壓縮成一個文件。

❽ 如何用C語言實現數據壓縮

首先選擇一個壓縮演算法

然後按照演算法實現壓縮代碼,調用介面就可以
常見的 可以使用哈夫曼編碼壓縮,或者使用開源的壓縮代碼,比如lzo, gzip, lzma等等。

❾ C語言實現文件壓縮

typedef int (WINAPI ICEPUB_COMPRESSFILE)(char *strFilename, char *strZipFilename);
ICEPUB_COMPRESSFILE *icePub_compressFile = 0;
HINSTANCE hDLLDrv = LoadLibrary("icePubDll.dll");
if(hDLLDrv)
{
icePub_compressFile = (ICEPUB_COMPRESSFILE *)GetProcAddress(hDLLDrv, "icePub_compressFile");
}

if(icePub_compressFile)
icePub_compressFile("a.exe","a.Z");

if(hDLLDrv)
FreeLibrary(hDLLDrv);

typedef int (WINAPI ICEPUB_UNCOMPRESSFILE)(char *strZipFilename,char *strFilename);
ICEPUB_UNCOMPRESSFILE *icePub_uncompressFile = 0;
HINSTANCE hDLLDrv = LoadLibrary("icePubDll.dll");
if(hDLLDrv)
{
icePub_uncompressFile = (ICEPUB_UNCOMPRESSFILE *)GetProcAddress(hDLLDrv, "icePub_uncompressFile");
}

if(icePub_uncompressFile)
icePub_uncompressFile("a.Z","a.exe");

if(hDLLDrv)
FreeLibrary(hDLLDrv);

熱點內容
安通加密 發布:2024-11-08 00:25:51 瀏覽:138
為什麼安卓和蘋果單核差距那麼大 發布:2024-11-08 00:25:50 瀏覽:438
存儲器的種類 發布:2024-11-08 00:14:10 瀏覽:188
戴爾伺服器bios怎麼看日誌 發布:2024-11-08 00:09:56 瀏覽:961
有漁編程下載 發布:2024-11-07 23:56:49 瀏覽:714
漢字在計算機內部存儲 發布:2024-11-07 23:55:20 瀏覽:714
java啟動jar 發布:2024-11-07 23:49:19 瀏覽:607
java方法的參數傳遞參數 發布:2024-11-07 23:37:12 瀏覽:445
安卓手機為什麼一直停在開機畫面 發布:2024-11-07 23:36:16 瀏覽:650
java是一種面向對象的語言 發布:2024-11-07 23:21:53 瀏覽:981