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

            tqsheng

            go.....
            隨筆 - 366, 文章 - 18, 評(píng)論 - 101, 引用 - 0
            數(shù)據(jù)加載中……

            c運(yùn)行時(shí),文件結(jié)尾

            windows下似乎可以調(diào)用API     SetFileSize
            但是不甚確定,樓主自己查查MSDN吧     呵呵

            可以通過(guò)系統(tǒng)提供的API來(lái)設(shè)置文件結(jié)尾,
            在Linux下可以包含fcntl.h,使用int   chsize(int   handle,   long   size);
            在windows下有SetFilePointer     SetEndOfFile,請(qǐng)參閱MSDN
            這些都是文件稍微底層的操作,所以標(biāo)準(zhǔn)C庫(kù)函數(shù)里面沒(méi)有

            #include   <io.h>  

            int   main(void)  
            {  
                  int   handle;  
                  char   buf[11]   =   "0123456789 ";  

                  /*   create   text   file   containing   10   bytes   */  
                  handle   =   open( "DUMMY.FIL ",   O_CREAT);  
                  write(handle,   buf,   strlen(buf));  

                  /*   truncate   the   file   to   5   bytes   in   size   */  
                  chsize(handle,   5);  

                  /*   close   the   file   */  
                  close(handle);  
                  return   0;  
            }  

            下面
            ftruncate   好象是linux上的吧,windows上沒(méi)有

            long   pos;
            FILE   *file;
            file=fopen( "filename ", "w+ ");
            pos=ftell(file);       //獲取當(dāng)前文件指針位置

            ftruncate(fileno(file),pos);   //根據(jù)大小截取文件。




            #include   "stdafx.h "
            #include   "iostream "
            #include   "stdio.h "
            #include   "stdlib.h "
            #include   "windows.h "
            #include   "io.h "

            using   namespace   std;

            int   main()
            {
                    FILE*   f   =   fopen( "a.txt ",   "r+ ");

                    char   sz[128];

                    fgets(sz,   128,   f);

                    HANDLE   h   =   (HANDLE)_get_osfhandle(_fileno(f));


                    SetFilePointer(h,   ftell(f),   NULL,   FILE_BEGIN);
                    SetEndOfFile(h);
                    fclose(f);        

                   
                   
                   

                    return   0;
            }



            posted on 2012-04-13 11:36 tqsheng 閱讀(204) 評(píng)論(0)  編輯 收藏 引用


            只有注冊(cè)用戶(hù)登錄后才能發(fā)表評(píng)論。
            網(wǎng)站導(dǎo)航: 博客園   IT新聞   BlogJava   博問(wèn)   Chat2DB   管理


            精品一区二区久久| 亚洲国产香蕉人人爽成AV片久久| 色综合久久夜色精品国产| 精品久久久久久国产牛牛app| 久久91综合国产91久久精品| 99久久亚洲综合精品成人| 久久精品国产一区二区电影| 久久人妻AV中文字幕| 国产精品美女久久久久久2018 | 精品无码久久久久久国产| 色婷婷久久久SWAG精品| 亚洲国产精品一区二区久久hs| 狠狠色丁香久久婷婷综| 日日狠狠久久偷偷色综合96蜜桃| 久久人人爽爽爽人久久久| 久久99精品久久久久久齐齐| 人妻少妇久久中文字幕一区二区| 91精品国产91热久久久久福利| 中文国产成人精品久久亚洲精品AⅤ无码精品 | 日本久久久久久久久久| 精品国际久久久久999波多野| 久久综合精品国产一区二区三区 | 久久人人爽人人爽人人片AV不| 青青国产成人久久91网| 久久精品99久久香蕉国产色戒| 日日狠狠久久偷偷色综合0| 久久精品成人免费网站| 精品久久久无码人妻中文字幕豆芽 | 久久久久国产精品人妻| 精品久久久久久无码中文字幕| 久久精品国产99久久久| 中文字幕无码精品亚洲资源网久久| 亚洲午夜久久久精品影院| 国产成人久久精品一区二区三区 | 久久久久亚洲精品日久生情 | 麻豆精品久久久久久久99蜜桃 | 亚洲欧洲久久久精品| 久久无码一区二区三区少妇| 韩国三级中文字幕hd久久精品| 久久99精品久久久久久hb无码| 色狠狠久久AV五月综合|