Было задание, условие которого отредактировать текст, данный в текстовом документе, отредактированный текст сохранить в этот же документ. Так вот, может это глупый вопрос, но как сохранить отредактированный текст в текстовый документ?)
Вот мой код:
#include <iostream>
#include <string>
#include <fstream>
using namespace std;
string RedactText(string s)
{
for (int j = 0; j < s.length(); j++)
{
if (s[j] == '-' && s[j + 1] == '-')
{
s.replace(j, 2, " - ");
}
if (s[j] == ' ')
{
while (s[j + 1] == ' ') s.erase(j + 1, 1);
}
if (s[j] == '.' && s[j + 1] != ' ')
{
s.replace(j, 1, ". ");
}
else if (s[j] == ',' && s[j + 1] != ' ')
{
s.replace(j, 1, ", ");
}
else if (s[j] == ':' && s[j + 1] != ' ')
{
s.replace(j, 1, ": ");
}
}
if (s[0] == ' ') s.erase(0, 1);
if (s[s.length() - 1] == ' ') s.erase(s.length() - 1, 1);
return s;
}
int main()
{
setlocale(LC_ALL, "");
fstream F("C:\\Это папка\\Бейсбол.txt", ios::in | ios::out);
string a;
while (getline(F, a))
{
a = RedactText(a);
cout << a << endl;
}
F.close();
system("pause");
}
Уже что только не пробовал, и ifstream + ofstream и просто fstream вводил, в лучшем случае текст просто не сохранялся. Что-то я явно делаю не так...
Самый простой способ:
#include <iostream>
#include <fstream>
#include <string>
#include <vector>
#include <iterator>
#include <algorithm>
using namespace std;
// RedactText code
int main()
{
setlocale(LC_ALL, "");
fstream F("C:\\Это папка\\Бейсбол.txt", ios_base::in);
// Здесь нужна проверка на успешность открытия файла
string a;
vector<string> fileStrings;
while (getline(F, a))
{
fileStrings.push_back(RedactText(a));
}
F.close();
F.open("C:\\Это папка\\Бейсбол.txt", ios_base::out | ios_base::trunc);
copy(fileStrings.begin(), fileStrings.end(), ostream_iterator<string>(F, "\n"));
F.close();
system("pause");
return 0;
}
Айфон мало держит заряд, разбираемся с проблемой вместе с AppLab
Перевод документов на английский язык: Важность и ключевые аспекты
Хотите улучшить этот вопрос? Обновите вопрос так, чтобы он вписывался в тематику Stack Overflow на русском
Cтруктура node имеет в своих полях указатели на node
У меня есть скомпилированный из ассемблераobj файл с функцией