24小时热门版块排行榜    

查看: 2131  |  回复: 7

astringent

铜虫 (著名写手)


[交流] 【求助】请问如何删除文件的重复行

初学fortran,我的文本文件中有一些重复行,我想把让这些重复行只输出一次,该如何操作啊?请大家帮帮忙。
我的数据是:
820  -38.208827972412109       -19.916282653808594   -21.833311080932617     
820  -38.208827972412109       -19.916282653808594   -21.833311080932617     
820  -38.208827972412109       -19.916282653808594    -21.833311080932617     
883  -23.923450469970703       -52.054363250732422    -53.736301422119141     
1048  -18.068826675415039       -47.927806854248047  -43.957603454589844     
1126  -42.303085327148438       -28.146203994750977      -16.566274642944336     
1192  -41.314952850341797       -31.519393920898438      -47.647663116455078     
1201  -22.678596496582031       -37.613601684570313      -41.853523254394531     
1333  -38.131767272949219       -31.827587127685547      -55.348121643066406     
1333  -38.131767272949219       -31.827587127685547      -55.348121643066406     
1522  -30.504835128784180       -17.426969528198242      -23.815391540527344     
1522  -30.504835128784180       -17.426969528198242       -23.815391540527344
回复此楼

» 猜你喜欢

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

» 抢金币啦!回帖就可以得到:

查看全部散金贴

已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
astringent(金币+1): 2011-01-19 17:26:23
沙发
2楼2011-01-19 08:29:03
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
★ ★ ★
余泽成(金币+3): 谢谢参与应助! 2011-01-19 14:45:48
astringent(金币+6): 2011-01-19 17:26:34
下面是一个简单的 Fortran 90 程序,至少对你的这个例子应该是可行的。
CODE:
program test
   character(len=80) :: line1, line2
   integer :: ios

   read(*,'(a)', iostat=ios) line1
   do
      read(*,'(a)', iostat=ios) line2
      if (ios < 0) exit
      if (index(line1, line2) /= 0) then
         line1 = line2
         cycle
      else
         write (*,'(a)') line1
         line1 = line2
      end if
   end do
   write (*,'(a)') line2

end program test

3楼2011-01-19 11:06:23
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
astringent(金币+6): 2011-01-19 17:27:08
不过话又说回来,用一些传统的小程序可能效果更好……

先 sort,然后 uniq 完事儿,呵呵……
4楼2011-01-19 11:34:00
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

zhai-lili

金虫 (正式写手)


astringent(金币+6): 2011-01-19 17:26:48
astringent(金币+1): 2011-04-25 20:03:34
我觉得可以导到数据库的表里面
删除重复的行之后再导出来文本,简单可行!

我一般都这么干!
5楼2011-01-19 15:45:09
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

xioooli

金虫 (小有名气)


★ ★
余泽成(金币+2): 谢谢参与应助,欢迎常来程序语言版! 2011-02-09 16:16:35
cat file | sort -u
6楼2011-01-25 16:29:31
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

nbjnh

木虫 (正式写手)


★ ★ ★
余泽成(金币+3): 谢谢参与应助,欢迎常来程序语言版! 2011-02-09 16:15:51
不用编程的。EXCEL2007里“数据”选项卡里就有一个按钮“删除重复项”可以满足你的要求。EXCEL之前的版本也可以通过“高级筛选”来删除重复的行。
7楼2011-01-25 21:39:42
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

hezhizih

金虫 (小有名气)


如果还是这组数据,之是删掉一行怎么改fortran
程序
8楼2011-03-19 20:49:55
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 astringent 的主题更新
普通表情 高级回复 (可上传附件)
信息提示
请填处理意见