2

我正在编写一个代码,我想在行尾附加一个文件名。有两种合乎逻辑的方法可以做到这一点,但我不知道 Fortran 中是否存在这些方法。

  1. 只需将一个字符变量附加到我正在阅读的行的末尾。

  2. [PREFERRED] 使用T带有数字变量的 (tab) 描述符,告诉它要跳到哪一列,然后从该列开始写入字符变量。

4

1 回答 1

3

将每一行作为字符串读取,然后在字符串末尾修剪空格并在末尾附加文件名。确保您的字符变量足够大。下面是一个简单的程序来说明这个想法。

program append_to_rows

implicit none

integer :: j
character(len=10) :: fname = 'mydata.txt'
character(len=100) :: row

open(1,file=fname, status='old')
open(2,file='processed.txt', status='unknown')

do j=1,6
    read(1,'(a)') row
    row = trim(row)//fname
    write(2,'(a)') trim(row)
end do

close(1)
close(2)

end program

我的数据.txt:

1,2,3,4,dfkldf
1,2,3fdfkj
1

123
  3434j,43,5

处理的.txt:

1,2,3,4,dfkldfmydata.txt
1,2,3fdfkjmydata.txt
1mydata.txt
mydata.txt
123mydata.txt
  3434j,43,5mydata.txt
于 2012-07-10T21:58:21.143 回答