【发布时间】:2013-08-19 22:32:53
【问题描述】:
如何通过使用 fstream 将内容复制到另一个 .txt 来读取 .txt 到类似内容。 问题是,当文件中有新行时。使用 ifstream 时如何检测?
用户输入“苹果”
例如: note.txt => 我昨天买了一个苹果。 苹果味道鲜美。
note_new.txt => 我昨天买了一个。 味道鲜美。
结果注释假设在上面,但是: note_new.txt => 我昨天买了一个。味道鲜美。
如何检查源文件中是否有新行,它也会在新文件中创建新行。
这是我当前的代码:
#include <iostream>
#include <fstream>
#include <string>
using namespace std;
int main() {
ifstream inFile ("note.txt");
string word;
ofstream outFile("note_new.txt");
while(inFile >> word) {
outfile << word << " ";
}
}
你们都可以帮助我吗?实际上,我还会检查检索到的单词何时与用户指定的单词相同,然后我不会在新文件中写入该单词。所以一般来说,它会删除与用户指定的单词相同的单词。
【问题讨论】:
-
提示:
std::getline() -
您逐字解析文件是否有原因?获取相同文件的最简单方法是根本不解析,只读取/写入二进制数据或使用任何平台特定的 API 来复制文件。
-
@RetiredNinja 实际上我还会检查检索到的单词何时与用户指定的相同,然后我不会在新文件中写入该单词。所以一般来说,它会删除与用户指定的单词相同的单词。
-
您应该在问题中指定它,因为它不适合“完全相同的内容”部分。