未灭时间 发表于 2018-2-6 16:16:24

问一个关于文件io的问题


就是打开文件无法在代码行直接输入文件地址,会报错,只能接受用户手动输入地址,请问有什么解决方法

人造人 发表于 2018-2-6 16:34:20

#include <iostream>
#include <fstream>

int main(void)
{
        std::ifstream ifile("C:\\VisualStudioProjects\\C++\\C++\\main.cpp");

        char ch;
        while(ifile.get(ch))
        {
                std::cout << ch;
        }

        ifile.close();

        return 0;
}


#include <iostream>
#include <fstream>

int main(void)
{
      std::ifstream ifile("C:\\VisualStudioProjects\\C++\\C++\\main.cpp");

      char ch;
      while(ifile.get(ch))
      {
                std::cout << ch;
      }

      ifile.close();

      return 0;
}
请按任意键继续. . .

未灭时间 发表于 2018-2-6 17:01:43

人造人 发表于 2018-2-6 16:34


。。。。你这个代码是以覆盖内容的方式打开的,我文件的内容成功的被123覆盖了,有恢复的方法吗{:10_266:}

人造人 发表于 2018-2-6 18:45:42

未灭时间 发表于 2018-2-6 17:01
。。。。你这个代码是以覆盖内容的方式打开的,我文件的内容成功的被123覆盖了,有恢复的方法吗{:10_266: ...

如何覆盖了?

未灭时间 发表于 2018-2-7 11:13:31

人造人 发表于 2018-2-6 18:45
如何覆盖了?

就是我用那个代码打开我原来有数据的txt文件,打开后往里面写入123,然后我去我的电脑里打开那个文件发现里面只有123了

人造人 发表于 2018-2-7 18:21:39

未灭时间 发表于 2018-2-7 11:13
就是我用那个代码打开我原来有数据的txt文件,打开后往里面写入123,然后我去我的电脑里打开那个文件发现 ...

那是你修改了我的源码吧?
把它改成了向文件写 123 ?

人造人 发表于 2018-2-7 18:22:54

肯定不是这个代码吧?
这个代码并没有覆盖什么,只是输出而已

#include <iostream>
#include <fstream>

int main(void)
{
      std::ifstream ifile("C:\\VisualStudioProjects\\C++\\C++\\main.cpp");

      char ch;
      while(ifile.get(ch))
      {
                std::cout << ch;
      }

      ifile.close();

      return 0;
}

未灭时间 发表于 2018-2-8 20:13:26

人造人 发表于 2018-2-7 18:22
肯定不是这个代码吧?
这个代码并没有覆盖什么,只是输出而已

我看了你的代码,按照你的格式弄了一个输入的

人造人 发表于 2018-2-8 20:27:10

未灭时间 发表于 2018-2-8 20:13
我看了你的代码,按照你的格式弄了一个输入的

哦,如果你没有备份,那就没办法恢复了

未灭时间 发表于 2018-2-9 21:13:37

人造人 发表于 2018-2-8 20:27
哦,如果你没有备份,那就没办法恢复了

{:10_285:}
页: [1]
查看完整版本: 问一个关于文件io的问题