zoukankan      html  css  js  c++  java
  • 文件操作:输出文件二进制数据

    #include <stdio.h>
    
    int main(int argc, char *argv[])
    {
        int i;
        FILE *fp = NULL;
        unsigned char *pData;
        int iLen, itmpLen, itmp;
    
        fp = fopen(argv[1], "rb");
        if(fp == NULL)
        {
            printf("fopen err
    ");
            goto end;
        }   
        fseek(fp, 0, SEEK_END);
        iLen = ftell(fp);
        if(iLen <= 0)
        {
            printf("file size err: %d
    ", iLen);
            goto end;
        }
        printf("file size: %d
    ", iLen);
    
        pData = malloc(iLen);
        if(pData == NULL)
        {
            printf("pData malloc err
    ");
            goto end;
        }
    
        //fseek(fp, 0, SEEK_SET);
        fclose(fp);
        fp = fopen(argv[1], "rb");
        if(fp == NULL)
        {
            printf("fopen err
    ");
            goto end;
        }
        itmpLen = 0;
        while(itmpLen < iLen)
        {
            itmp = fread(pData+itmpLen, 1, iLen, fp);
            printf("itmp = %d
    ", itmp);
            itmpLen += itmp;
        }
        for(i = 0; i < iLen; i++)
        {
            if(i != 0 && i % 16 == 0)
                printf("
    ");
            printf("0x%02x, ", pData[i]); 
        }
        printf("
    ");
        fclose(fp);
    end:
        return 0;
    }
  • 相关阅读:
    FreePascal
    Delphi
    FreePascal
    FreePascal
    Linux
    FreePascal
    FreePascal
    CodeTyphon
    IDEA
    工作流科普——don't ask i don't know either
  • 原文地址:https://www.cnblogs.com/utank/p/4147339.html
Copyright © 2011-2022 走看看