1. fstream file("user.dat",ios::in|ios::out|ios::binary)这句,当文件不存在是当然不会建立,因为你用了ios::in表示这是输入文件,人家只负责从文件读内容,如果文件不存在,也不会替你创建。2. fstream file("user.dat",ios::out|ios::binary)这里用了ios::out,表示这个文件作为输出流,要往这里面写东西的,如果不存在,就会自动建立后面的问题一样附:这是标准库的东西,和用不用VC6没关系