java传参调用fortran的exe可执行文件
Posted ygkeke
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了java传参调用fortran的exe可执行文件相关的知识,希望对你有一定的参考价值。
java传参调用fortran的exe可执行文件
需求:最近有一个任务,其核心部分主要是整合java和fortran之间的数据交互;java调用fortran的exe可执行文件,同时传递参数到fortran里面,以便fortran后续的处理,
下面我抽离出传参的代码案例
一、fortran端 main.f90 生成 .exe 可执行文件
program main
implicit none
integer :: getcwd,status,sh,kk,getarg
character(len=64) :: dirname
character(len=64) :: keke,arg
status=getcwd(dirname) //dirname 得到工作空间
write(*,*)dirname //打印到控制台查看dirname内容
//arg 得到命令行第一个参数m1km1904040200000, 可以改1为0就是得到第0个参数.
status=getarg(1,arg)
write(*,*)arg
READ(*,*)dirname //等待控制台窗口输入参数到 赋值dirname
end program main
二、java端调用.exe可执行文件
public static void main(String[] args) {
try {
//下面两种方式调用
//fortrans工作空间,status=getcwd(dirname) 得到dirname的值等于调用的位置
Runtime.getRuntime().exec("cmd /c start D:/fortransoft/MyProjects/main/Debug/main.exe m1km1904040200000");
//Desktop.getDesktop().open(new File("D:/fortran/test/main.exe"));
}catch(Exception e) {
e.printStackTrace();
}
}
以上是关于java传参调用fortran的exe可执行文件的主要内容,如果未能解决你的问题,请参考以下文章
python的py文件打包exe可执行文件(传参+读取文件)
使用java编写一个调用第三方可执行文件的windows命令行工具
使用java编写一个调用第三方可执行文件的windows命令行工具