Jump to content
  • Advertisement
Sign in to follow this  
Concentrate

Java.Runtime.exec

This topic is 2716 days old which is more than the 365 day threshold we allow for new replies. Please post a new topic.

If you intended to correct an error in the post then please contact us.

Recommended Posts

I have this weird problem. I am using java to integrate this C++ program I have. I use java to call the C++ executable. The C++ executable is just a test dummy. This is the source :


int main(int argCount, char * args[]){
int sum = 0;
for(int i = 0; i < argCount; ++i){
sum += convertTo<int>(args);
}
ofstream fileout("result.txt");
cout << "Total Sum = " << sum << endl;
fileout<< "Total Sum = " << sum << endl;
return 0;
}


I am using the following java code to execute it :


Process p = null;
String path = "Program.exe";
String cmds[] = {path,"3","2","1"};
p = Runtime.getRuntime().exec(cmds);
init(p);
doRead();


and from the java output screen I get "Total Sum = 6" and it works fine. The problem is that notice the "fileout" in the C++ executable. The file isn't created and hence the
data isn't stored. I'm not sure how to solve this problem. Any ideas? I understand that java redirect the output stream into its outputstream or something, but I don't think thats exactly the problem, although it might be part of it. Any ideas?

Share this post


Link to post
Share on other sites
Advertisement
Bumping for help. The problem exist for also reading from file. For example, If I take a filename from the command line argument, and try to open it, I get an error saying cannot open it. The file exist so I know thats not the problem. This is a big issue for me. Please assist me. Thank you.

Share this post


Link to post
Share on other sites
Sure. The problem was with netbeans. When I used the ProcessBuilder or the Runtime.exec it wasn't using the directory passed to find the file. Instead it was using its default project directory. So I could either set the environment path variable to the correct directory, or just create a copy of a file and add it to the default netbeans project directory. So if I use the ofstream to save data, the data was being saved in my netbeans project directory.

Share this post


Link to post
Share on other sites
Sign in to follow this  

  • Advertisement
×

Important Information

By using GameDev.net, you agree to our community Guidelines, Terms of Use, and Privacy Policy.

Participate in the game development conversation and more when you create an account on GameDev.net!

Sign me up!