将float数组存入文本文件中,读取的是乱码??,期待高手解决

解决方案 »

  1.   

    楼上正解!读出的时候再转回float
      

  2.   

    我的目的是将一个FLOAT1维数组保存在TXT文本中,然后在其他地方打开TXT直接能看到数字,现在写进去的是乱码
      

  3.   

    CStdioFile file;
    if (file.Open( sFileName, CFile::modeWrite | CFile::modeCreate))
    {
        CString str;
        for(int i = 0; i < SIZE; i++)
        {
             str.Format("%f",FF[i]);
             file.WriteString(str);
        }
        file.Close();
    }
      

  4.   

    fprintf()函数写,fscanf()读就行了
      

  5.   

    我的目的是将一个FLOAT1维数组保存在TXT文本中,然后在其他地方打开TXT直接能看到数字,现在写进去的是乱码
    --------------
    那必须转换成字符串
      

  6.   

    str.format(..)这句不行啊,出问题如下:
    error C2664: 'void ATL::CStringT<BaseType,StringTraits>::Format(const wchar_t *,...)' : cannot convert parameter 1 from 'const char [5]' to 'const wchar_t *'
            with
            [
                BaseType=wchar_t,
                StringTraits=StrTraitMFC<wchar_t>
            ]
            Types pointed to are unrelated; conversion requires reinterpret_cast, C-style cast or function-style cast
      

  7.   

    str.Format(_T("%f"),i); 
    另外可试一下_fcvt();   int  decimal, sign;
       char *buffer;
       double source = 3.1415926535;   buffer = _fcvt( source, 7, &decimal, &sign );
       printf( "source: %2.10f   buffer: '%s'   decimal: %d   sign: %d\n",
                source, buffer, decimal, sign );
      

  8.   

    THE SAME TO Mackz