java - 使用Java解析FORTRAN输出文件

标签 java fortran

有没有分析fortran输出的开源java工具?我希望能写些

Format format = new Format("(1x, 2(F10.3,I3,' XY ',F7.3))");
String s = " -12345.897    XY 123.456-12345.897*** XY 123.456";
Result result = format.parse(s);   

请注意,它特别是fortran。注意有趣的事情,如连接字段,溢出,空格=0,等等。有太多的问题,我不想重新发现他们自己!
评论。我不明白为什么这样做是错误的。格式是生成阅读代码的简洁方法。另一种方法是为每种格式硬编码一个阅读器。如果我有一个文件-比如说100个不同格式的输出,那么我必须有100块代码。我用ichemlabs的方法写下:
List<Object> fields = FortranFormat.read(s, format);

然后回来
双整型字符串双双整型字符串双
更新:
我已经在一个合理数量的东西上测试了ichemlabs。如果为空,则返回空整数和双精度数。with*表示异常(并非不合理)。它可以管理多条线路
fields = FortranFormat.read("   1\n    2", "(I4/I4)");

返回2个整数(1和2)
更新:
ichemlabs代码特别允许空白输入(但不允许使用星号):
public void setReturnZeroForBlanks(boolean returnZeroForBlanks)

    Set whether zeros are returned for blanks.

    Parameters:
        returnZeroForBlanks - the return zero for blanks

最佳答案

This seems to do it(输出和输入)。上次更新是1998年!
Another one here-看起来更漂亮一点?来自Ichemlabs

关于java - 使用Java解析FORTRAN输出文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4051559/

相关文章:

java - 如何使评分栏仅显示满星

java - 本地字符串文字的内存分配?

fortran - 在 Fortran 中获取 HDF5 文件名的长度?

java - 读取、更新然后在 java 中创建另一个 csv 文件

java - 如何在 SharedPreferences 中保存和检索日期

java - if语句不执行

parallel-processing - FORTRAN 中的 OpenMP 未运行预期的线程数

performance - FORTRAN - 减少函数调用开销

linux - 编辑和编译 MPIs FORTRAN 代码

java - 从java调用fortran90 exe程序没有执行