以前我在Visual Studio.net 2003用的一些程序,原来用来保存文件的一些函数,在2005下都不能用了,都无法保存文件,这是为什么?是不是要修改头文件,或是修改别的!请高手指点(急)

解决方案 »

  1.   

    应该不会吧. ofstream是STL的标准类啊代码帖出来看看
      

  2.   

    以前我在Visual Studio.net 2003用的一些程序,原来用来保存文件的一些函数,在2005下都不能用了,都无法保存文件,这是为什么?是不是要修改头文件,或是修改别的!
    不可能的~~~
      

  3.   


    /**函数名:SaveData()*功能:  把现有的数据保存起来*参数:无*返回:布尔值
    */
    bool CNewReverberationDialog::SaveData()
    { if (m_pData1Y == NULL || m_nData1Len <= 0)
    {
    AfxMessageBox("当前没有任何数据,请先采集后保存"); return false;
    } CFileDialog  dlg(false,"*.dat","Data",OFN_OVERWRITEPROMPT,"Data(*.dat)|*.dat||",this,0); if (dlg.DoModal() == 2)
    {
    return false;
    } CString str = dlg.GetPathName(); ofstream file; file.open(str, ios::trunc | ios::out); if ( !file)
    {
    AfxMessageBox("文件创建失败"); file.close(); return false;
    } file<<m_nHZ<<endl;//频率 file<<m_fRush<<endl;//分辨率 file<<m_nData1Len<<endl;//长度1 file<<m_nData2Len<<endl;//长度2;
    for (int i = 0; i < m_nData1Len; i++)
    {
    file<<m_pData1X[i]<<endl;
    } for (int i = 0; i < m_nData1Len; i++)
    {
    file<<m_pData1Y[i]<<endl;
    } for (int i = 0; i < m_nData2Len; i++)
    {
    file<<m_pData2X[i]<<endl;
    } for (int i = 0; i < m_nData2Len; i++)
    {
    file<<m_pData2Y[i]<<endl;
    } file.close(); return true;}
      

  4.   

    很有可能是unicode的问题,2005默认开unicode的,你可以把工程属性unicode关掉,或者把字符串都加个_T,比如_T("string");