主题:请问fortran如何修改文件名?
congqianyou
[专家分:0] 发布于 2011-12-15 04:12:00
假如a.txt已经存在,我想用fortran将文件名改为b.txt,
想问一下大家如何实现??
万分感谢!!
回复列表 (共6个回复)
沙发
金陵秀才 [专家分:0] 发布于 2011-12-15 10:51:00
新建一个B.TXT OPEN(4,FILE='B.TXT', STATUS='UNKNOWN')
再把A.TXT写进去 ok?
板凳
臭石头雪球 [专家分:23030] 发布于 2011-12-15 11:20:00
1.像楼上那样,读取a所有内容,写入b。适合所有编译器
2.VF 编译器,可使用编译器扩展的功能
USE DFLIB
result = RENAMEFILEQQ( 'a.txt', 'b.txt' )
或者
use dfport
integer(4) istatus
character*12 old_name, new_name
print *, "Enter file to rename: "
read *, old_name
print *, "Enter new name: "
read *, new_name
ISTATUS = RENAME (old_name, new_name)
3.对于允许使用 API 函数的编译器,在windows环境下可以用API函数。
比如
Use Kernel32
Implicit None
Integer i
i = MoveFile( 'a.txt' , 'b.txt' )
4.对于允许使用系统命令行的编译器,可使用系统命令改名,比如windows下的 ren 命令
USE DFPORT
Implicit None
Integer i
i= system("ren a.txt b.txt")
3 楼
congqianyou [专家分:0] 发布于 2011-12-15 11:53:00
文件太大,速度比较慢。。。
4 楼
congqianyou [专家分:0] 发布于 2011-12-15 11:55:00
谢谢。在linux上用gfortran如何实现呢?
5 楼
asymptotic [专家分:16630] 发布于 2011-12-15 12:44:00
若是批量改名,我一般用 Total Commander
6 楼
臭石头雪球 [专家分:23030] 发布于 2011-12-15 14:07:00
[quote]
谢谢。在linux上用gfortran如何实现呢?[/quote]
因为这些都不是 Fortran 语法的内容,所以你需要查阅编译器的说明书。
看编译器是否提供使用系统命令行的扩展,或者系统API功能
我来回复