24小时热门版块排行榜    

查看: 2565  |  回复: 9

浔荆

木虫 (正式写手)

[求助] 在windows下fortran如何使用命令新建文件夹 已有3人参与

想必大家写程序时也会把输出文件放在一个单独的文件夹里,可如何能够让程序自动建立一个文件夹呢?
回复此楼

» 猜你喜欢

» 本主题相关价值贴推荐,对您同样有帮助:

已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

mshwangg

至尊木虫 (正式写手)

【答案】应助回帖

★ ★ ★ ★ ★
感谢参与,应助指数 +1
浔荆: 金币+5, 有帮助 2014-09-03 13:32:11
Fortran自己可能不行吧,起码F90之前的版本都不行
或者说Fortran调用win系统的API函数?花费这脑细胞的功夫,不如自己手动了,或者用其他程序做系统层面的然后调用For程序运行
2楼2014-09-03 09:09:59
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

浔荆

木虫 (正式写手)

引用回帖:
2楼: Originally posted by mshwangg at 2014-09-03 09:09:59
Fortran自己可能不行吧,起码F90之前的版本都不行
或者说Fortran调用win系统的API函数?花费这脑细胞的功夫,不如自己手动了,或者用其他程序做系统层面的然后调用For程序运行

那f90版本能行么?
手动其实也挺麻烦的,而且编译好的程序换台电脑运行的话,还必须新建一个一模一样的路径
请问您能稍微介绍一下api函数吗,在fortran里面要如何调用呢?
3楼2014-09-03 13:36:03
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

mshwangg

至尊木虫 (正式写手)

【答案】应助回帖

引用回帖:
3楼: Originally posted by 浔荆 at 2014-09-03 13:36:03
那f90版本能行么?
手动其实也挺麻烦的,而且编译好的程序换台电脑运行的话,还必须新建一个一模一样的路径
请问您能稍微介绍一下api函数吗,在fortran里面要如何调用呢?...

调用API我也不会呀,听说而已
找到个贴,你可以参考一下,没有测试,也不知道语言版本
muchong.com/html/200811/1036484.html
4楼2014-09-03 15:01:36
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

QQED

银虫 (正式写手)

【答案】应助回帖

感谢参与,应助指数 +1
其实没楼上诸位说得那么复杂了,我的程序里就这么简单一句话:open(unit=11,file='D:\H2\cholesky\output.dat')。于是就在D盘的相应目录下产生该文件了。你可以把这里的目录改成C盘的根目录,不管到哪台机器上总会有C盘的根目录吧。
5楼2014-09-04 00:15:41
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

charmantang

禁虫 (正式写手)

本帖内容被屏蔽

6楼2014-09-04 14:11:39
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

sxf2012

木虫 (正式写手)

【答案】应助回帖

★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★
感谢参与,应助指数 +1
浔荆: 金币+15, ★★★★★最佳答案, 灰常感谢,已测试成功,可以新建文件夹。 2014-09-08 08:23:44
[code]
                FD1 = '..\DATA'
        FileDir1 = 'mkdir '//FD1       
        INQUIRE(DIRECTORY=FD1,EXIST=ALIVE)
        IF(.not.ALIVE)THEN
            CALL SYSTEM(ADJUSTL(TRIM(FileDir1)))
        ENDIF       
                [code/]
在上一级目录中生成data文件夹,如果在当前目录下生成的话, ..\ 改成 .\
7楼2014-09-05 12:45:13
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

sxf2012

木虫 (正式写手)

引用回帖:
7楼: Originally posted by sxf2012 at 2014-09-05 12:45:13
FD1 = '..\DATA'
        FileDir1 = 'mkdir '//FD1       
        INQUIRE(DIRECTORY=FD1,EXIST=ALIVE)
        IF(.not.ALIVE)THEN
            CALL SYSTEM(ADJUSTL(TRIM(FileDir1)))
        ENDIF       
               
在上一级 ...

INQUIRE(DIRECTORY=FD1,EXIST=ALIVE
判断是否存在要建立的文件夹
8楼2014-09-05 12:46:24
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

浔荆

木虫 (正式写手)

引用回帖:
7楼: Originally posted by sxf2012 at 2014-09-05 12:45:13
FD1 = '..\DATA'
        FileDir1 = 'mkdir '//FD1       
        INQUIRE(DIRECTORY=FD1,EXIST=ALIVE)
        IF(.not.ALIVE)THEN
            CALL SYSTEM(ADJUSTL(TRIM(FileDir1)))
        ENDIF       
               
在上一级 ...

mkdir后边有个空格,删掉的话会提示语法错误,我找了好久才找出来的。。。
9楼2014-09-08 08:24:48
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

yingmo01

木虫 (小有名气)

请问怎样才能把输出文件放入到一个单独的文件夹中呢?
10楼2016-12-22 22:13:09
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 浔荆 的主题更新
信息提示
请填处理意见