• <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>

            woaidongmao

            文章均收錄自他人博客,但不喜標(biāo)題前加-[轉(zhuǎn)貼],因其丑陋,見(jiàn)諒!~
            隨筆 - 1469, 文章 - 0, 評(píng)論 - 661, 引用 - 0
            數(shù)據(jù)加載中……

            C 語(yǔ)言獲取文件長(zhǎng)度

            fseek(file,   0,   SEEK_END);
            len=ftell(filein);
            fseek(file,0,SEEK_SET);


            下面,我們來(lái)解釋一下fseek()ftell()是如何工作的。
            l fseek()
            函數(shù)

            fseek
            (移動(dòng)文件流的讀寫(xiě)位置)
            相關(guān)函數(shù)
            rewind
            ftellfgetposfsetposlseek
            表頭文件
            #include<stdio.h>
            定義函數(shù)
            int fseek(FILE * stream,long offset,int whence);
            函數(shù)說(shuō)明
            fseek()
            用來(lái)移動(dòng)文件流的讀寫(xiě)位置。參數(shù)stream為已打開(kāi)的文件指針,參數(shù)offset為根據(jù)參數(shù)whence來(lái)移動(dòng)讀寫(xiě)位置的位移數(shù)。
            參數(shù)
            whence
            為下列其中一種:
            SEEK_SET
            從距文件開(kāi)頭offset位移量為clip_image001新的讀寫(xiě)位置。SEEK_CUR 以目前的讀寫(xiě)位置往后增加offset個(gè)位移量。
            SEEK_END
            將讀寫(xiě)位置指向文件尾后再增加offset個(gè)位移量。
            當(dāng)whence值為SEEK_CUR SEEK_END時(shí),參數(shù)offset允許負(fù)值的出現(xiàn)。
            下列是較特別的使用方式:
            1)
            欲將讀寫(xiě)位置移動(dòng)到文件開(kāi)頭時(shí):fseek(FILE *stream,0,SEEK_SET);
            2)
            欲將讀寫(xiě)位置移動(dòng)到文件尾時(shí):fseek(FILE *stream,0,0SEEK_END);
            返回值
            當(dāng)調(diào)用成功時(shí)則返回0,若有錯(cuò)誤則返回-1errno會(huì)存放錯(cuò)誤代碼。
            附加說(shuō)明
            fseek()
            不像lseek()會(huì)返回讀寫(xiě)位置,因此必須使用ftell()來(lái)取得目前讀寫(xiě)的位置。
            l ftell()
            函數(shù)

            ftell
            (取得文件流的讀取位置)
            相關(guān)函數(shù)
            fseek
            rewindfgetposfsetpos
            表頭文件
            #include<stdio.h>
            定義函數(shù)
            long ftell(FILE * stream);
            函數(shù)說(shuō)明
            ftell()
            用來(lái)取得文件流目前的讀寫(xiě)位置。參數(shù)stream為已打開(kāi)的文件指針。
            返回值
            當(dāng)調(diào)用成功時(shí)則返回目前的讀寫(xiě)位置,若有錯(cuò)誤則返回-1errno會(huì)存放錯(cuò)誤代碼。
            錯(cuò)誤代碼
            EBADF
            參數(shù)stream無(wú)效或可移動(dòng)讀寫(xiě)位置的文件流。
            范例
            參考fseek()
            通過(guò)fseek()ftell()兩個(gè)函數(shù),我們就可以隨意訪問(wèn)文件的任何位置了,想了想好像操作文件就這么easy,實(shí)在也沒(méi)有更多clip_image001可 說(shuō)的了。對(duì)了,fseek()ftell()存在一個(gè)潛在的問(wèn)題就是他們限制文件的大小只能在long類型的表示范圍以內(nèi),也就是說(shuō)通過(guò)這種方式,只能 打開(kāi)2,000,000,000字節(jié)的文件,不過(guò)在絕大多數(shù)情況下似乎也已經(jīng)夠用了。如果需要打開(kāi)更大的文件,你需要用到fgetpos() fsetpos()函數(shù)了,那是另一個(gè)命題了。

            posted on 2009-09-18 10:56 肥仔 閱讀(3329) 評(píng)論(0)  編輯 收藏 引用 所屬分類: C++ 基礎(chǔ)

            无码伊人66久久大杳蕉网站谷歌| 99久久亚洲综合精品成人| 伊人久久亚洲综合影院| 久久久久国产精品嫩草影院| 狠狠色丁香婷婷综合久久来来去| 久久av高潮av无码av喷吹| 99久久99这里只有免费费精品| 超级97碰碰碰碰久久久久最新| 亚洲欧美成人久久综合中文网| 伊人久久综在合线亚洲2019| 国内精品久久久久伊人av| 色婷婷久久综合中文久久蜜桃av| 国产成人精品白浆久久69| 色妞色综合久久夜夜| 亚洲国产精品无码久久久秋霞2| 国产69精品久久久久观看软件| 伊人伊成久久人综合网777| 午夜精品久久久内射近拍高清| 久久精品国产亚洲av日韩| 久久99精品免费一区二区| 国产精品熟女福利久久AV| 久久久精品波多野结衣| 亚洲精品成人久久久| 一本久道久久综合狠狠爱| 国产综合精品久久亚洲| 久久久久九九精品影院| 久久精品极品盛宴观看| 久久精品嫩草影院| 亚洲国产另类久久久精品黑人| 无码人妻精品一区二区三区久久| 久久综合精品国产二区无码| 99久久久国产精品免费无卡顿 | 91精品久久久久久无码| 久久播电影网| 国产激情久久久久久熟女老人| 久久综合久久自在自线精品自| 久久99精品国产一区二区三区| 久久99热这里只有精品国产| 国内精品九九久久精品 | 蜜桃麻豆www久久| 色狠狠久久AV五月综合|