关闭

文件的逆序存储

265人阅读 评论(0) 收藏 举报
 

HTML Tags and JavaScript tutorial



文件的逆序存储





#include "stdio.h"
#include "io.h"
#include "fcntl.h "
void Flip()
{
 char Buffer[1024],Temp;
 int i;
 int  nReadLength,nRead;
 int nLoop,nArrLen;
 long nFileLength,SeekOffSet;
 int handle;
 FILE * SourceFile,*TargetFile;
 
 handle = open("00",O_RDONLY);
 nFileLength = filelength(handle);
 
 SourceFile = fopen("00","rb");
 TargetFile = fopen("11","wb");
 
 nReadLength = 1;
 SeekOffSet = nFileLength - 1024;
 nRead = 1024;
 nLoop = 512;
 nArrLen = 1023;
 while(nReadLength != 0)
 {
  fseek(SourceFile,SeekOffSet,SEEK_SET);
  nReadLength = fread(Buffer,sizeof(char),nRead,SourceFile);
  for(i=0;i<nLoop;i++)
  {
   Temp = Buffer[i];
   Buffer[i] = Buffer[nArrLen-i];
   Buffer[nArrLen-i] = Temp;
  }
  fwrite(Buffer,sizeof(char),nReadLength,TargetFile);
  if(SeekOffSet < 1024)
  {
   nRead = SeekOffSet;
   SeekOffSet = 0;
   nLoop = nRead/2;
   nArrLen = nRead -1;
  }
  else
   SeekOffSet -= 1024;
  if( nReadLength < 1024 )
   nReadLength = 0;
 }
 fclose(SourceFile);
 fclose(TargetFile);
}
main()
{
 Flip();

本程序在TC2.0下调试通过,源文件文件名是“00”,生成的文件名是“11”。


0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:150485次
    • 积分:4028
    • 等级:
    • 排名:第7678名
    • 原创:242篇
    • 转载:0篇
    • 译文:0篇
    • 评论:16条
    文章存档
    最新评论