我想從fortran編寫二進制數據文件,但我發現常規文件接口非常有限,不知Fortran是否具有POSIX編譯功能。是Fortran 77 POSIX是否符合? - 寫二進制文件
我發現這個標準:IEEE 1003.9-1992,但我不知道它是否完全支持最常見的編譯器(或者如果我必須激活任何標誌)。我找不到任何實際的信息,你能給我任何建議嗎?
順便說一句我正在嘗試寫圖像文件,首先我想用tga/pgm來嘗試。另外我不想添加任何依賴到外部庫,謝謝!
解決方案:
最後我能寫ppm files,我不得不avoid printing newline在內部循環結束,最終的代碼是這樣的:
subroutine imgwrite()
implicit none
* ******************************************************************
include 'image.f'
* ******************************************************************
integer x, y, i
write(imgunit, '(A)') 'P3'
write(imgunit, '(I4)') imgwidth
write(imgunit, '(I4)') imgheight
write(imgunit, *) 255
do 10 y=1, imgheight
do 20 x=1,imgwidth
write(imgunit,100) (int(imgpixels(x,y,i)*255D0), i=1,3)
20 continue
write(imgunit,110)
10 continue
100 FORMAT(3(I4),$)
110 FORMAT((/))
return
end
沒人提供的任何有關FORTRAN中POSIX的信息。
謝謝。