文件复制fopen报错???????????????

图片说明
大佬们,这个为什么会报错,绝对路径也不行,现在换了相对路径还是不行???为什么呢,有没有解决的办法??

用“w”打开的文件存在,则以指定的文件名建立该文件,若打开的文件已经存在,则将该文件删去,重建一个新文件。
照理说不会出现打开失败,失败只可能是你在打开之前没关闭文件。
你试试这两句单独尝试运行看下效果。
图片说明

将mmm.txt 文件名,换一个新文件名试一试。如果是要加绝对路径,记得要用“\" 替换路径中的"\".

检查文件是否存在,可以使用完整的路径试试看。
另外
fopen的第二个参数只能是以下几种书写模式:

“r” 以 只读方式打开文件,该文件必须存在。
“r+” 以可读写方式打开文件,该文件必须存在。
”rb+“ 读写打开一个 二进制文件,允许读写数据,文件必须存在。
“w” 打开只写文件,若文件存在则文件长度清为0,即该文件内容会消失。若文件不存在则建立该文件。
“w+” 打开可读写文件,若文件存在则文件长度清为零,即该文件内容会消失。若文件不存在则建立该文件。
“a” 以附加的方式打开只写文件。若文件不存在,则会建立该文件,如果文件存在,写入的数据会被加到文件尾,即文件原先的内容会被保留。( EOF符保留)
”a+“ 以附加方式打开可读写的文件。若文件不存在,则会建立该文件,如果文件存在,写入的数据会被加到文件尾后,即文件原先的内容会被保留。 (原来的EOF符不保留)
“wb” 只写打开或新建一个 二进制文件;只允许写数据。
“wb+” 读写打开或建立一个二进制文件,允许读和写
“wx” 创建文本文件,只允许写入数据.[C11]
“wbx” 创建一个二进制文件,只允许写入数据.[C11]
”w+x“ 创建一个文本文件,允许读写.[C11]
“wb+x” 创建一个二进制文件,允许读写.[C11]
“w+bx” 和"wb+x"相同[C11]
“rt” 只读打开一个文本文件,只允许读数据
  “wt” 只写打开或建立一个文本文件,只允许写数据
  “at” 追加打开一个文本文件,并在文件末尾写数据
  “rb” 只读打开一个二进制文件,只允许读数据
  “wb” 只写打开或建立一个二进制文件,只允许写数据
  “ab” 追加打开一个二进制文件,并在文件末尾写数据
  “rt+” 读写打开一个文本文件,允许读和写
  “wt+” 读写打开或建立一个文本文件,允许读写
  “at+” 读写打开一个文本文件,允许读,或在文件末追加数据
  “rb+” 读写打开一个二进制文件,允许读和写
  “ab+” 读写打开一个二进制文件,允许读,或在文件末追加数据
以x结尾的模式为独占模式,文件已存在或者无法创建(一般是路径不正确)都会导致fopen失败.文件以操作系统支持的独占模式打开

有可能是系统权限问题,win10系统里面,c盘的文件读写操作是需要管理员权限的,你或者用管理员权限打开,或者把程序和文件都换到c盘以外的硬盘区进行操作。

看一下文件是否已经打开了, 自己 打开的文件是不能再操作的

我记得fopen("xxxxx.xx", a); 可以在文件不存在的情况下,新建文件,然后打开,你可以试试

权限不足,给完整的读写权限试一下吧。

多半是没有读的权限