Reputation: 103
Here is my code, how do i create a file in the sub directory contacts? Every time the file is created, it appears in the same directory as my program.
int main(){
ofstream myfile("\\contacts");
myfile.open ("a");
myfile.close();
}
Upvotes: 2
Views: 10993
Reputation: 121971
Specify the full path in the constructor:
ofstream myfile(".\\contacts\\a"); // or just "contacts/a"
if (myfile.is_open())
{
}
The posted code attempts to create a file called "\\contacts"
and then another file called "a"
.
Note:
ofstream
will not create intermediate directories: "contacts"
must exist prior to the use of the ofstream
.ofstream
so it is unnecessary to explicitly call myfile.close()
.Upvotes: 6
Reputation: 133
If you write the file path as "a" you are saving it in the same directory as the program. If you want it in the contacts directory (which will be in the the program's directory) you must write the path of the file. This directory will be /contacts/a, so your code should be:
int main(){
ofstream myfile("\\contacts\\a");
myfile.close();
}
Upvotes: 0