• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>

            hdqqq

              C++博客 :: 首頁 :: 新隨筆 :: 聯系 :: 聚合  :: 管理 ::
              35 隨筆 :: 0 文章 :: 104 評論 :: 0 Trackbacks

            #

            ?

            /*

            ??? Zlib 是常用的壓縮庫,在很多平臺上使用,是用c和部分匯編完成的,提供的是基于c接口的使用函數

            zlib 的contrib中提供了三種基于iostream的使用方式.

            ?

            ?? 在MFC中,經常使用CFile進行文件的讀寫操作,在這種時候,如果想使用Zlib的話,要么使用zlib自身

            提供的操作函數,要么使用zlib contrib中iostream操作流.或者自己對zlib進行封裝.

            ?

            所以我對zlib進行了封裝,便于使用.

            ?

            Filter 功能類

            zlib_compress_filter<int 壓縮級別> 實現壓縮功能類,根據模板參數實現不同的壓縮程度.??

            zlib_uncompress_filter<int >? 實現解壓功能類,模板參數總為 1


            Filter類自身帶有 緩沖區, 可以存儲處理后的數據,用戶可以直接通過這兩個Filter類對數據進行

            壓縮和解壓縮操作.

            ?

            Pipe類

            ??? 為了和MFC中的CFile類進行配接,對數據進行處理后,把CFile作為最后接受數據的容器,類似于

            Boost庫中的Sink,提供了一個模板實現的BufferPipe模板類.

            ?

            template <typename filter,typename buffer_type, typename next_pipe> class BufferPipe;

            模板參數:

            filter? 數據處理用filter

            buffer_type 緩沖類型

            next_pipe 后面接的pipe,可以是CFile,用于最終寫入磁盤.

            ?

            ?

            Pipe后還可以接一個Pipe,可以象一個管子連接起來,并且,以后通過擴充filter可以實現不同的數據操作功能.

            ?

            提供了一個測試代碼

            編譯后一個對話框 四個 按鈕

            ?

            按鈕1 將 c:\a.bmp? 壓縮為 c:\b.cr???? 使用filter

            按鈕2 將 c:\b.cr? 解壓縮為 c:\c.bmp?? 使用filter

            按鈕3 將 c:\a.bmp 壓縮為 c:\d.cr?? 使用pipe功能

            按鈕4 將 c:\a.bmp? 通過壓縮和解壓縮管道, 存儲為 e.bmp應該和a.bmp相同,用于測試管道的連接功能.?
            ?

            代碼位置:

            http://www.shnenglu.com/files/hdqqq/z_file.rar

            編譯需要的zlib 請自行到該庫的網站下載.

            這個文章實現的和boost中的filter類似的功能,可以和MFC配合使用.

            不足:

            fiter 使用的 buf_holder寫得比較粗糙,以后有機會的話,改進.

            */

            ?

            posted @ 2006-09-01 13:03 hdqqq 閱讀(6023) | 評論 (7)編輯 收藏

            在有些時候,需要對預設的數組進行循環操作

            char char_array[] = {'a','b','c','d'};
            int i;
            for (i = 0; i < sizeof(char_array)/sizeof(char); i++) {
            ??? cout << char_array[i] << endl;
            }

            所以寫了個宏,取得數組的大小

            template <typename T>
            T get_size(T value[]);

            #define ASIZEOF(a) sizeof(a)/sizeof(get_size(a))

            然后就可以這樣寫了.
            for (i = 0; i < ASIZEOF(char_array); i++) {
            ??? cout << char_array[i] << endl;
            }

            但是缺點就是不能正確的分別傳入的是一個指針類型,還是一個類型的數組.


            代碼在vc6 和 devcpp 4.9 中測試通過


            ?

            posted @ 2006-08-24 13:35 hdqqq 閱讀(866) | 評論 (4)編輯 收藏

            一個提供文件交換的程序 (傳輸火箭) 1.0 測試版本
            自由軟件,不帶任何ie插件.

            這段時間天氣太熱了,人變的心浮氣燥,進展不大,程序基本功能大體完成,所以放到這里,希望大家能幫助下載測試一下,并提出您的寶貴的建議.
            我的mail:
            xuxuhappy@sina.com.cn


            自身提供一個客戶端和服務端(可選擇是否啟動),提供文件下載和上傳的功能,類似ftp.
            特點:
            1.多線程下載文件
            2.支持斷點續傳
            3.支持數據壓縮,可以配置服務端在傳輸數據之前進行數據壓縮,然后進行數據傳輸,客戶端接收后自動進行解壓縮并寫入文件.
            4.支持多線程上傳,傳統的ftp服務器只支持單連接上傳,本程序支持多線程上傳,使得上傳速度可以象多線程下載一樣加快速度,支持斷點續傳.
            5.支持用戶和權限設置,并且在服務端提供操作日志.

            下一階段的開發計劃:
            1.增強任務圖表信息顯示
            2.支持多語言界面
            3.支持ftp,http客戶端下載
            4.傳輸協議改為udp/tcp可選
            5.支持自動程序更新.

            下載地址
            http://www.shnenglu.com/Files/hdqqq/TransferRocket_Setup.rar

            posted @ 2006-08-17 22:57 hdqqq 閱讀(441) | 評論 (0)編輯 收藏

                 摘要: 現在 , 越來越多的程序使用 xml 文件作為應用程序的配置文件 , 在 windows 平臺上 , 一般的程序使用微軟的 msxml 接口來讀寫 xml 文件 . xml 文件原則上可以存儲任意形式的數據 ...  閱讀全文
            posted @ 2006-02-13 16:17 hdqqq 閱讀(7422) | 評論 (9)編輯 收藏

            在CPPBLOG新申請了一個blog,很高興有和大家一起交流的機會.
            posted @ 2006-02-10 09:36 hdqqq 閱讀(197) | 評論 (1)編輯 收藏

            僅列出標題
            共4頁: 1 2 3 4 
            88久久精品无码一区二区毛片| 久久综合给合久久国产免费| 久久99精品九九九久久婷婷| 亚洲а∨天堂久久精品9966| 久久久久av无码免费网| 国产精品禁18久久久夂久| 久久精品国产一区二区三区不卡| 久久久久久综合网天天| 国内精品久久久久久久久电影网 | 91精品国产91久久久久久蜜臀| 天天综合久久一二三区| 国产精品99久久久久久人| 一本久久综合亚洲鲁鲁五月天亚洲欧美一区二区 | 久久久精品久久久久久| 精品久久8x国产免费观看| 伊人久久大香线蕉AV一区二区| 久久99亚洲网美利坚合众国| 一日本道伊人久久综合影| 国产午夜福利精品久久| 蜜臀av性久久久久蜜臀aⅴ| 2020久久精品亚洲热综合一本| 国内精品久久久久| 性欧美大战久久久久久久久| 久久婷婷是五月综合色狠狠| 欧美成a人片免费看久久| 国产成人精品久久| 亚洲国产精品久久| 精品久久久久国产免费| 久久伊人精品青青草原高清| 996久久国产精品线观看| 久久久久人妻精品一区二区三区| 热99RE久久精品这里都是精品免费 | 一本久久a久久精品综合香蕉| 一本一道久久精品综合| 日本道色综合久久影院| 蜜桃麻豆www久久| 日本道色综合久久影院| 国产精品免费看久久久香蕉| 久久精品国产一区二区| 亚洲国产精品一区二区三区久久| 久久综合亚洲鲁鲁五月天|