c++怎么在txt里直接定位到某一行写文件
时间: 2023-09-16 17:07:36 浏览: 71
你可以使用文件流(fstream)的 `seekg()` 函数来定位到文件的某一行,然后使用 `<<` 运算符写入文件。下面是一个示例代码:
```cpp
#include <fstream>
#include <iostream>
using namespace std;
int main() {
ofstream file("example.txt"); // 打开文件进行写入
if (!file.is_open()) {
cout << "文件打开失败!" << endl;
return 1;
}
// 写入文件内容
file << "第一行" << endl;
file << "第二行" << endl;
file << "第三行" << endl;
file.close(); // 关闭文件
// 重新打开文件进行定位和写入
fstream file2("example.txt");
if (!file2.is_open()) {
cout << "文件打开失败!" << endl;
return 1;
}
// 定位到第二行
file2.seekg(12, ios::beg);
// 向文件写入新的一行
file2 << "这是新的一行" << endl;
file2.close(); // 关闭文件
return 0;
}
```
在这个示例中,我们首先打开文件 `example.txt` 进行写入操作,然后关闭文件。接下来,我们使用 `fstream` 重新打开文件进行定位和写入,首先使用 `seekg()` 函数定位到第二行的开头,然后使用 `<<` 运算符向文件写入新的一行。最后,我们关闭文件并结束程序。
相关推荐
![docx](https://img-home.csdnimg.cn/images/20210720083331.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)