c++ - 无法正确遍历文件
问题描述
std::fstream pasaka("my_file", std::fstream::in | std::fstream::out);
std::fstream pusuku("my_file1", std::fstream::in | std::fstream::out);
std::string line;
if (pasaka.is_open())
{
//while (std::getline(pasaka, line))
//std::cout << line << std::endl;
// pusuku << line << std::endl;
while (!pasaka.eof())
{
if (pasaka.get() == 'a')
{
pasaka.seekp((pasaka.tellp() - static_cast<std::streampos>(1)));
pasaka.put('u');
pasaka.seekp(pasaka.tellp());
}
else if (pasaka.get() == 'A')
{
pasaka.seekp((pasaka.tellp() - static_cast<std::streampos>(1)));
pasaka.put('U');
pasaka.seekp(pasaka.tellp());
}
}
pusuku.close();
pasaka.close();
}
else {
std::cout << "Faild to open" << '\n';
}
return 0;
问题:
- 如果注释的代码(第一个 while 循环和其中的所有内容)程序执行 0 开关
2)如果找到 A 它不会删除 A 字符,而只是添加 U
收到的结果:(来自 txt 文件)uuuuuuu UAUAAAA
预期结果(来自 txt 文件) uuuuuu UUUUUUU
解决方案
推荐阅读
- swift - 无法在 ARKit 中查看 SKVideo
- python - 如何将绘图与其他 HTML 内容一起导出为 pdf?
- java - Kotlin 协程单元测试执行异常
- amazon-web-services - 如何将 Aurora Mysql ddl 翻译成 Redshift ddl
- python - 如何计算python中2个日期时间之间的差异
- python - 您可以在本地计算机上运行 Google Colab 吗?
- python - 为 4 个数组类型的观察设置观察空间
- webrtc - 如何使用 PeerJS 实现多方 P2P 视频会议?
- react-native - 在 React Native Android 的项目 ':app' 中找不到路径为 ':react-native-google-sign-in' 的项目
- java - 为 Java 子进程 (ProcessBuilder) 分配名称