用你以前得C runtime库函数就可以了或者用C++的runtime库函数(流操作)也可以或者用CStdioFile最简单了

解决方案 »

  1.   

    我想把字符取到一个数组中,该数组用什么类型,
    我是用CString X[N]类型。
    但用while(FSCANF(STREAM,“%S”,X[I++])!=EOF);
    操作错误。
      

  2.   

    CFile file(_T("file.TXT"),CFILE::modeRead)
    DWORD dwBytesRemaing=file.GetLength();
    while(dwBytesRemaing)
    {
       uint nBytesRead = file.read(buffer,sizeof(buffer));
    dwBytesRemaing-=nBytesRead;
    }
      

  3.   

    //...
    CStdioFile myFile;
    myFile.Open("C:\\windows\\system.ini",CStdioFile::modeReadWrite);
    CString str;
    myFile.ReadString(str);
    MessageBox(str);
    myFile.ReadString(str);
    MessageBox(str);
    //...
      

  4.   

    HANDLE hFile =  CreateFile( "文件路径", GENERIC_READ, FILE_SHARE_READ, NULL, OPEN_EXISTING, NULL, NULL );if ( hBmpFile ){ DWORD dwSize = GetFileSize( hFile, NULL );
    if ( dwSize>0 ){
    char *pszBuf = new char[dwSize];
    memset( pszBuf, 0, dwSize ); DWORD dwBytesRead = 0;
    if ( ReadFile( hBmpFile, (LPVOID)pszBuf, dwSize, &dwBytesRead, NULL ) ){ //读取文件信息成功了...
    }
    delete pszBuf;
    pszBuf = NULL;
    }
    CloseHandle( hBmpFile );}
      

  5.   

    用cstdiofile最简单,readstring(str) writestring 一次读写一行,用字符数组就可以存储了,也可以用CSTRING 类。判断文件结束与否?我是这样做的:
    m_file.Seektoend()
    DWORD endposition=m_file.GetCurrentPosition();
    m_file.Seektobegin()
    DWORD currentpositon=m_file.GetCurrentPosition();
    后面每读一次,更新当前位置,与文件结束位置endposition比较,判断文件是否结束?太笨的方法了 ^_^,我 一只想知道更简单的方法。
      

  6.   

    所谓的字符数组就是char?
    我以前学的是c,
    在vc++中有还有什么处理汉字的,String?
    谢谢以上各位!!!
      

  7.   

    是的,就是char buffer[100]之类。
    CString 类可以处理汉字
      

  8.   

    利用CFILE 类,可以打开文件后者存储文件,很方便使用!
    帮助中有,很好用!!!
      

  9.   

    CFile类方便,可以打开文件后者存储文件,很方便使用 MSDN中有详细说明
      

  10.   

    CStringArray 数组类解决你的问题十分方便,首先得好好设计你要读的的字符的长度,然后,
    CStringArray mycsa;//注意在适当的地方声明
    int iStringSize;//需要在用到的地方初始化
    //以下沿用rick1126()前辈的部分代码
    HANDLE hFile =  CreateFile( "文件路径", GENERIC_READ, FILE_SHARE_READ, NULL, PEN_EXISTING, NULL, NULL );
    if ( hBmpFile ){
    DWORD dwSize = GetFileSize( hFile, NULL );
    if ( dwSize>0 ){
    CString csTemp;
    DWORD dwBytesRead = 0;
    if ( ReadFile( hBmpFile, csTemp.GetBuffer(iStringSize), iStringSize, &dwBytesRead, NULL ) )
    {
    //读取文件信息成功了...
    }
    csTemp.ReleaseBuffer(iStringSize);
    mycsa.Add(csTemp);
    }
    CloseHandle( hBmpFile );
    }
    //注意不要忘了释放mycsa的空间