我正在尝试写一个fortran代码,读取姓名、姓氏和号码,然后将它们写入已有的文件中。
代码如下所示:http://pastebin.com/SV8erDND
现在,"Deneme.txt“文件中只有2行代码,如下所示;
john mayer 110
hugh jackman 111每当我试图通过编译器向文件添加另一个名称时,它就会覆盖第二行。例如,如果我输入dennis lui 510,文件现在看起来是这样的;
john mayer 110
dennis lui 510如何防止它被覆盖?而且,似乎没有循环。在添加了名字/姓氏/号码之后,我希望它返回到第一步,并请求另一个名字/姓氏/号码。
发布于 2014-03-29 02:55:05
首先,您从文件中读取一行,然后要求用户输入名称。如果它与你刚刚读到的一个名字相匹配,程序会要求你输入另一个名字。如果它是一个新名称,它将从上次读取停止的位置开始写入,即在第二行。
检查一个名字是否已经存在没有多大意义,因为您只检查名字。应该做的是读取整个文件,将数据存储在哈希表中,然后将用户输入的任何在哈希表中找不到的名称/数字附加到末尾。您是否正在尝试实现某种类型的数据库?如果是这样,那么我不认为Fortran是实现简单/快速解决方案的最佳选择,也许你应该选择像perl或python这样的语言。
https://stackoverflow.com/questions/22720213
复制相似问题