我正在从txt文件中读取信息(数字),然后将这些数字添加到另一个文件中,而其他数字则具有相同的结构。
文件中每行的开头都有一个数字,用于标识特定的产品。 该代码将使我可以在另一个文件中搜索相同的产品。 在我的程序中,我必须将一个文件中的其他"变量"添加到另一个文件中,然后在其中一个文件的同一位置替换它。
我没有使用a或a+打开任何这些文件,而是使用r和r+打开了这些文件,因为我想替换文件中间可能存在的行中的信息,并且 并非最后。
该程序可以编译并运行,但是当要替换文件中的信息时,它什么也没做。
我应该如何解决该问题?
发布一些代码。 但总的来说,除非文件使用固定长度的记录,否则您根本无法做到这一点。
使用数据库而不是平面文件。
r并不意味着替换,而是读取。
程序可以替换(覆盖)文件中间的文本。 但是问题是是否应该执行此操作。
为了插入较大的文本或较小的文本(并缩小间隙),必须写入新的文本文件。 这是假设文件的宽度不是固定的。 基本规则是在插入之前将所有原始文本复制到新文件中。 编写新文本。 最后写剩下的原始文本。 这是很多工作,即使是最简单的程序也会减慢速度。
我建议您先设计数据布局,然后再进行下一步。 还可以考虑使用数据库,请参阅我的文章:在什么时候使用数据库值得?
您的目标是设计数据以最大程度地减少重复和数据提取。