简体   繁体   中英

How do I open a file within notepad++ with C++?

I'm trying to get my c++ program to open an sql file in notepad++. I can get it to open with notepad like this:

system("notepad.exe script_foo.sql");

But that's undesirable as it's not formatted. When I try to substitute notepad.exe for notepad++.exe like this:

system("'C:\Program Files\Notepad++\notepad++.exe' script_foo.sql");

I get a invalid syntax error.

Any issues where I'm going wrong?

The WinNT shell uses double-quotes to include spaces in a file name. Single quotes are not recognized. So you need

"C:\Program Files\Notepad++\notepad++.exe" script_foo.sql

as your command.

To embed this in C++ source code, you'll need to escape backslashes (as Andre already mentioned) and also the double-quotes.

system("\"C:\\Program Files\\Notepad++\\notepad++.exe\" script_foo.sql");

In C++, the backslash character \\ is an escape character in strings. You need to double the backslashes to achieve what you really want:

system("'C:\\Program Files\\Notepad++\\notepad++.exe' script_foo.sql");

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM