why*_*n0t 0 excel fortran localization output
Fortran 中有没有办法将浮点数写为 ,17,3而不是17.3将点更改为逗号?
我有一些通过子程序写入 .csv 的大型数据集,我想在上面做一些 Excel。德语版的 Excel.用作浮点数的分隔符。我知道我可以使用导入功能来处理它,或者使用 Nodepad++ 搜索并替换.为,. 但是我确实生成了很多这样的文件,并且其他人将使用该子例程,因此准备好 Excel 的文件会很好。
如果您只是写一两行,您可以将十进制编辑描述符添加dc到您的输出格式中。这是一个简单的例子
write(*,'(dc,f12.3)') 12.3
Run Code Online (Sandbox Code Playgroud)
产生
12,300
Run Code Online (Sandbox Code Playgroud)
如果要写入文件,请添加子句
decimal = 'comma'
Run Code Online (Sandbox Code Playgroud)
对您的open陈述,例如:
open(6,decimal='comma')
Run Code Online (Sandbox Code Playgroud)
当然,在这里我(重新)打开标准输出来写逗号而不是点。