Форум программистов, компьютерный форум CyberForum.ru

Запись string в файл - C++

Восстановить пароль Регистрация
 
Sawyer1988
10 / 10 / 0
Регистрация: 04.03.2012
Сообщений: 128
15.11.2012, 20:31     Запись string в файл #1
есть строка, я её должен записать в текстовый файл так,чтобы она разбилась на несколько строк , при этом длина каждой не превышала 10 символов, а слова которые не влезли переносились:


C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
stroka="word1 jladhfa\nds;F jdhs\nkjhs kej qkjehr w ";
if((a.length()<10))
        {
a.insert(a.begin()+10, '\n'); 
 }
 
//
 
 
         ofstream fout("t1.txt");
 
    if(!fout)
    cout<<"Не удалось создать файл\n";
    fout<<a;
    fout.close();
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
15.11.2012, 20:31     Запись string в файл
Посмотрите здесь:

Запись string в файл C++
запись в файл string C++
C++ Запись трёхмерного массива string в файл
C++ сохранение/чтение map<string,string*> в файл
C++ getline, string, запись в файл, русский язык
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
David Sylva
 Аватар для David Sylva
1280 / 942 / 51
Регистрация: 17.05.2012
Сообщений: 2,686
15.11.2012, 21:08     Запись string в файл #2
Можно вот так сделать
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
#include <iostream>
#include <fstream> 
 
int main() 
{ 
    char str[] = "dsfdsf sdf sdfdsf dsg sdhsfjhsfjsfjhsf sg hsfhsfhsha"; 
    int i; 
 
    std::ofstream outfile("Text.txt");  
 
    for ( i = 0; i < strlen(str); i++) 
    {   
        outfile << str[i]; 
        if( i % 10 == 9) 
            outfile << std::endl; 
    } 
    outfile.close();
}
Sawyer1988
10 / 10 / 0
Регистрация: 04.03.2012
Сообщений: 128
15.11.2012, 21:38  [ТС]     Запись string в файл #3
в файл пишет, но если натыкается на слово, это слово не переносится
David Sylva
 Аватар для David Sylva
1280 / 942 / 51
Регистрация: 17.05.2012
Сообщений: 2,686
15.11.2012, 21:40     Запись string в файл #4
Цитата Сообщение от Sawyer1988 Посмотреть сообщение
в файл пишет, но если натыкается на слово, это слово не переносится
не понял объясни как надо?
Sawyer1988
10 / 10 / 0
Регистрация: 04.03.2012
Сообщений: 128
15.11.2012, 21:44  [ТС]     Запись string в файл #5
строку записываю в файл, она может быть любой длины, если она более 10 символов, то переносим всё что дальше вниз(получаются строки по 10 символов), при этом если '\n' попадает на слово, это слово переносится вниз.

У меня гемор с переносом этого слова)
David Sylva
 Аватар для David Sylva
1280 / 942 / 51
Регистрация: 17.05.2012
Сообщений: 2,686
15.11.2012, 21:55     Запись string в файл #6
Цитата Сообщение от Sawyer1988 Посмотреть сообщение
при этом если '\n' попадает на слово,
каким образом символ переноса строки, может попадать на слово? Вообще странное какое-то задание или ты неправильно понял.
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
15.11.2012, 23:29     Запись string в файл
Еще ссылки по теме:

C++ Запись string в бинарный файл
C++ Сериализация объектов с полями std::string + запись/чтение в файл
Запись string в бинарный файл C++

Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
Sawyer1988
10 / 10 / 0
Регистрация: 04.03.2012
Сообщений: 128
15.11.2012, 23:29  [ТС]     Запись string в файл #7
по заданию его надо ставить в строку в месте , когда длина этой строки начинает превышать к примеру 20 символов - а если там находится длиинное слово? Получается надо назад двигать до пробела и туда его ставить.

Добавлено через 1 час 3 минуты
сделал так, но не так)
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
      string ss="1fdgertertert 2trytiudsfdsfsdf 3jgbxsdfsdfsdf 4cs 5gdgt 6rrth";
 
        for(int i=0;i<ss.length();i++)
        {
            if(i<40)
            {
            if(ss[i] == ' ')
                
                ss[i]='\n';
            }
        
            
        }
        
        cout<<ss;
ofstream fout("t2.txt");
 
        if(!fout)
            cout<<"Не удалось создать файл\n";
        fout<<ss;
        fout.close();
Yandex
Объявления
15.11.2012, 23:29     Запись string в файл
Ответ Создать тему
Опции темы

Текущее время: 10:04. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru