C++ 在文本文件中间追加字符串
这是我的密码C++ 在文本文件中间追加字符串,c++,string,file,C++,String,File,这是我的密码 #include <string> #include <iostream> #include <fstream> int main(void){ fstream myfile2; myfile2.open("test2.txt", ios::app); string checkline; getline(myfile2, checkline); int razmer=checkline.length();
#include <string>
#include <iostream>
#include <fstream>
int main(void){
fstream myfile2;
myfile2.open("test2.txt", ios::app);
string checkline;
getline(myfile2, checkline);
int razmer=checkline.length();
string balli="256";
myfile2.seekp(razmer);
myfile2<<balli;
}
我想从
伊万诺夫
->伊万诺夫256
。没有触碰的第二根弦。但我的代码根本不起作用。提前感谢。编辑文本文件没有简单的方法。通常的解决方案是将整个源文件读入内存,在内存中进行修改,然后写出所有文件
在您的示例中,文件似乎是基于行的,您可以逐行读取它,并将这些行放在一个文件夹中。编辑要编辑的线,然后在向量上循环并写出线
注意:写入文件时,您以写入模式打开它,因此文件将重新创建并释放所有旧内容。编辑文本文件没有简单的方法。通常的解决方案是将整个源文件读入内存,在内存中进行修改,然后写出所有文件 在您的示例中,文件似乎是基于行的,您可以逐行读取它,并将这些行放在一个文件夹中。编辑要编辑的线,然后在向量上循环并写出线
注意:写入文件时,您以写入模式打开它,因此文件将重新创建并释放所有旧内容。编辑文本文件没有简单的方法。通常的解决方案是将整个源文件读入内存,在内存中进行修改,然后写出所有文件 在您的示例中,文件似乎是基于行的,您可以逐行读取它,并将这些行放在一个文件夹中。编辑要编辑的线,然后在向量上循环并写出线
注意:写入文件时,您以写入模式打开它,因此文件将重新创建并释放所有旧内容。编辑文本文件没有简单的方法。通常的解决方案是将整个源文件读入内存,在内存中进行修改,然后写出所有文件 在您的示例中,文件似乎是基于行的,您可以逐行读取它,并将这些行放在一个文件夹中。编辑要编辑的线,然后在向量上循环并写出线
注意:写入文件时,您以写入模式打开它,因此文件将重新创建并释放所有旧内容。但是我的代码有什么问题?seekp必须返回我需要的位置,而不仅仅是在文本文件中写入。@ratkke如果您看到,例如,您将看到
app
的意思是“在每次写入之前查找到流的末尾”。因此,无论写入指针位于什么位置,您写入的所有内容都将在末尾写入。此外,即使您更改了模式,您也只需覆盖文件中的现有数据,它不会自动移动。但是我的代码有什么问题吗?seekp必须返回我需要的位置,而不仅仅是在文本文件中写入。@ratkke如果您看到,例如,您将看到app
的意思是“在每次写入之前查找到流的末尾”。因此,无论写入指针位于什么位置,您写入的所有内容都将在末尾写入。此外,即使您更改了模式,您也只需覆盖文件中的现有数据,它不会自动移动。但是我的代码有什么问题吗?seekp必须返回我需要的位置,而不仅仅是在文本文件中写入。@ratkke如果您看到,例如,您将看到app
的意思是“在每次写入之前查找到流的末尾”。因此,无论写入指针位于什么位置,您写入的所有内容都将在末尾写入。此外,即使您更改了模式,您也只需覆盖文件中的现有数据,它不会自动移动。但是我的代码有什么问题吗?seekp必须返回我需要的位置,而不仅仅是在文本文件中写入。@ratkke如果您看到,例如,您将看到app
的意思是“在每次写入之前查找到流的末尾”。因此,无论写入指针位于什么位置,您写入的所有内容都将在末尾写入。此外,即使您更改模式,您只需覆盖文件中的现有数据,它也不会自动移动。什么不起作用?什么不起作用?什么不起作用?什么不起作用?什么不起作用?
Ivanov
Petrov