【发布时间】:2012-06-17 23:21:58
【问题描述】:
我想知道是否有一种方法可以在您阅读时更改文本文件的特定行。我正在创建一个 ATM 程序,我想在他们提取或存入某些东西时更改个人账户中的金额。我有一个用于用户名、密码和余额的文本文件,但我只想更改余额。我该怎么做呢?
【问题讨论】:
-
读取整个文件,更改您想要的行,再次写入文件。
标签: c++ text-files
我想知道是否有一种方法可以在您阅读时更改文本文件的特定行。我正在创建一个 ATM 程序,我想在他们提取或存入某些东西时更改个人账户中的金额。我有一个用于用户名、密码和余额的文本文件,但我只想更改余额。我该怎么做呢?
【问题讨论】:
标签: c++ text-files
【讨论】:
仅当更改的文本与原始文本具有相同的字节长度时,才能在文本文件中原地更改行。如果不能保证这一点(听起来你的作业肯定就是这种情况),当文件很小时,一种特别有效的常用方法是创建一个临时文件,将新内容写入其中,然后交换文件,并删除原件。这种方法的一个优点是,如果写入操作在中间停止,您的文件不会损坏:临时文件损坏,而原始文件保持不变。
【讨论】: