zoukankan      html  css  js  c++  java
  • fread fwrite 读写文本文件(MFC 应用程序)

     /*
    	FILE * stream;
    	char buf[20];
    	 memset(buf,0,20); //初始化内出
    
    	if((stream=fopen("G:\\123.txt","r"))==NULL)
    	{
           TRACE("打开文件失败!");
    	   return;
    	}
        TRACE("read finish");
    	fseek(stream,0,0);
    	fread(buf,1,20,stream);
        fclose(stream);
    		TRACE("%s",buf);*/
    		     //第一种方法  必须 初始化内存!!!!!!!要不然为烫烫烫烫烫 烫烫烫  乱码   
    	/*
    	FILE * stream;
    	char buf[20];
    	memset(buf,0,20); //初始化内出
    
    	if((stream=fopen("G:\\123.txt","r"))==NULL)
    	{
           TRACE("打开文件失败!");
    	   return;
    	}
        TRACE("read finish");
    	fseek(stream,0,0);
    //	fread(buf,1,20,stream);
    	int i=0;
    	while(!feof(stream))
    	{
    		fread(&buf[i],sizeof(char),1,stream);
    	i++;
    	}   
        fclose(stream);
    	TRACE("%s",buf);
        //************第二种 一个一个读 
    	*/
    
    	
    
    //FILE* pFile=fopen("G:\\123.txt","r");//这里加载一个PE文件    
    //fseek(pFile, 0, SEEK_END);   
    //int len = ftell(pFile);   
    //char* szBuf=new char[len+1]; 
    ////memset(szBuf,0,len);  
    //fseek(pFile, 0, SEEK_SET);  
    //int iRead=fread(szBuf,1,len,pFile);
    //szBuf[len]=0;
    // fclose(pFile);
    //	TRACE("%s",szBuf);
    //	//delete szBuf;//释放内存
    // TRACE("%d",iRead);
    	  //**************************************第三种方法
                    没有问题 但是 当有换行时  最后有一个 “屯” 字符不知道为什么?单行是正确的 
    
    
    FILE *fp;
    int flen;
    char *p;
    if((fp=fopen("G:\\A5.txt","r"))==NULL)
    {
    	return ;
    
    }
    fseek(fp,0,SEEK_END);
    flen=ftell(fp);
    p=(char*)malloc(flen+1);
    if(p==NULL)
    {
        fclose(fp);
    
    }
    fseek(fp,0,SEEK_SET);
    fread(p,flen,1,fp);
    p[flen]=0;
    TRACE("%s",p);
    fclose(fp);
    //free(p);
      //**************************第四种 方法 
    
     FILE *wfile;
     wfile=fopen("G:\\A56.txt","wt+");
     if(wfile==NULL)
     {
       TRACE("create file error");
       return;
     }
     int num=fwrite(p,1,strlen(p),wfile);
     fclose(wfile);
    
     int size=strlen(p);
     TRACE("大小是:\n");
     TRACE("%d",size);
    
     TRACE("写入的数量\n");
     TRACE("%d",num);
    
    }
    

    最后 写文件 必须是   wfile=fopen("G:\\A56.txt","wt+");  中"wt+"形式的文本文件!不能是二进制文件

    不知道 第三种 读的时候 有多行时,最后一个字符为"屯”  为什么是 啊,单行正确

  • 相关阅读:
    JS实现动态生成表格并提交表格数据向后端 表格中数据转为json
    JS 添加和删除HTML 标签
    操作系统杂碎
    bootstrap3级下拉菜单 及 CSS实现三级下拉菜单分析
    jquery获取复选框被选中的值
    Mac 命令行启动并连接Redis
    抓包工具不抓包的话记得看看还有没有没关的代理
    Mac OS Sierra 安装PHP扩展 Operation not permitted
    导航栏对于UIScrollview以及子类所做的一些事
    探索static的用处
  • 原文地址:https://www.cnblogs.com/marky/p/2496827.html
Copyright © 2011-2022 走看看