文本文件显示 删除文本文件前n个字符
#include<iostream>
#include<string.h>
using namespace std;
void displayContent(const char * path)
{
FILE * fp=fopen(path,"r");
int c;
while((c=fgetc(fp))!=EOF)
printf("%c",c);
fclose(fp);
}
void deleteLeftChars( char * path,int deleteCount)
{
int i;
char * newFileName=new char[strlen(path)+1];
memset(newFileName,0,strlen(path)+1);
strncpy(newFileName,path,strlen(path)-3);
strcat(newFileName,"pcm");
FILE *fp=fopen(path,"ab+");
FILE *temfp=fopen(newFileName,"wb+");
int c;
long length;
fseek(fp,0,SEEK_END);
length=ftell(fp);
if(deleteCount>length) return;
fseek(fp,0,SEEK_SET);
for(i=0;i<deleteCount;i++)
c=fgetc(fp);
while(1)
{
if( (c=fgetc(fp))!=EOF)
fputc(c,temfp);
else
break;
}
fclose(fp);
fclose(temfp);
//system("del tmpfile.txt");
}
int main()
{
//displayContent("./wsy_sound1519885219.wav");
deleteLeftChars("wsy_sound1519885218.wav",44);
//displayContent("./wsy_sound1519885219.wav");
return 0;
}
// fp=fopen(path,"wb");
// fseek(temfp,0,SEEK_SET);
// while(1)
// {
// if((c=fgetc(temfp))!=EOF)
// fputc(c,fp);
// else
// break;
// }
// fclose(fp);