JBTALKS.CC

标题: 请问下关于 C++ 检查文件是否存在的问题(已解决谢谢Super-Tomato完美解答) [打印本页]

作者: Jacker    时间: 2010-9-13 10:34 AM
标题: 请问下关于 C++ 检查文件是否存在的问题(已解决谢谢Super-Tomato完美解答)
本帖最后由 Jacker 于 2010-9-20 11:36 AM 编辑

#include <iostream>
#include <fstream>
using namespace std;
#define FILENAME "index.swf"

int main()
{

     fstream _file;
     _file.open(FILENAME,ios::in);
     if(!_file)
     {

         cout<<FILENAME<<"no\n";

      }
      else
      {

          cout<<FILENAME<<"yes";

      }
      return 0;
}


我想请问下(#define FILENAME "index.swf") 为什么我文件放在exe那里然后打开依然判断不存在? 是否 要放路径?请各位大大解答:cry:
作者: Super-Tomato    时间: 2010-9-13 02:58 PM
本帖最后由 Super-Tomato 于 2010-9-13 03:04 PM 编辑
#include
#include
using namespace std;
#define FILENAME "index.swf"

int main()
{

     fs ...
Jacker 发表于 2010-9-13 10:34 AM



刚測試過了没問題,也許是编译器的不同吧,不然你可以使用 C 的 fopen 等各種方式嘗試,但記得要习惯性加上 close 释放資源



p/s: 看看這样是否可行
  1. cout << FILENAME << (ifstream(FILENAME) ? "yes" : "no") << "\n";
复制代码

作者: Jacker    时间: 2010-9-13 05:19 PM
回复 2# Super-Tomato

我想请问下我的文件应该放在那里,还是我需要加上路径?
我测试一直都是 no 的 但是明明有那个文件呀= =~
作者: Super-Tomato    时间: 2010-9-13 05:29 PM
回复  Super-Tomato

我想请问下我的文件应该放在那里,还是我需要加上路径?
我测试一直都是 no 的 但 ...
Jacker 发表于 2010-9-13 05:19 PM


檔案當然是和妳的 console 同一路径下自然就不用加上路径
你的exe和swf檔案放在 C:\ 下測試,我忘了 fstream 是否可读取中文路径名




欢迎光临 JBTALKS.CC (https://jbtalks.my/) Powered by Discuz! X2.5