Panel użytkownika
Nazwa użytkownika:
Hasło:
Nie masz jeszcze konta?

Plik tekstowy-każde zdanie w osobnej linii

Ostatnio zmodyfikowano 2016-01-17 21:04
Autor Wiadomość
Kacper78
Temat założony przez niniejszego użytkownika
Plik tekstowy-każde zdanie w osobnej linii
» 2016-01-17 18:53:02
Witam jestem początkujacy w programowaniu i mam pewien problem. (w sumie to dwa)
1. W jaki sposób podczas wczytywania pliku tekstowego wyświetlic każde zdanie w osobnej linii? Wiem tylko że musi byc jakis warunek na to gdy pojawia sie ". "
2. Jak zapisać taki zedytowany plik obok istniejacego nie nadpisujac go ani nie dopisujac tresci drugi raz?.

Kod jaki mam do tej pory
C/C++
int main()
{
   
    string tekst;
   
    ifstream mojplik( "abc.txt" );
    if( mojplik.is_open() )
    {
        while( mojplik.good() )
        {
            getline( mojplik, tekst );
            cout << tekst << endl;
        }
        mojplik.close();
    }
    return 0;
}
P-143667
carlosmay
» 2016-01-17 19:19:34
1. W jaki sposób podczas wczytywania pliku tekstowego wyświetlic każde zdanie w osobnej linii? Wiem tylko że musi byc jakis warunek na to gdy pojawia sie ". "
getline( plik, wers, '.' );
Wczytuj do kropki.

2. Jak zapisać taki zedytowany plik obok istniejacego nie nadpisujac go ani nie dopisujac tresci drugi raz?.
Otworzyć drugi plik docelowy i do niego zapisywać odczytany wiersz.
C/C++
while( warunek ) {
    getline( plik_zrodlowy, wers, '.' );
    plik_docelowy << wers << '\n';
}
P-143675
Kacper78
Temat założony przez niniejszego użytkownika
» 2016-01-17 19:35:40
Dzieki za pomoc,  program wyświetla mi prawidłowo ale apropo punktu drugiego to czy program wtedy sam utworzy taki plik tekstowy ? czy poprostu wpisze treść w pusty gotowy plik.txt? Bo moim zadaniem jest, by po uruchomieniu programu automatycznie tworzylo mi drugi plik.txt poprostu z dopiskiem 2.

Mam cos takiego

C/C++
#include <iostream>
#include <fstream>
#include <string>


using namespace std;

int main()
{
   
    string tekst;
   
   
    ifstream mojplik( "abc.txt" );
    if( mojplik.is_open() )
    {
        while( mojplik.good() )
       
        {
           
            getline( mojplik, tekst, '.' );
            cout << tekst << endl;
            ofstream abc2.txt << tekst << '\n';
           
        }
       
        mojplik.close();
    }
    return 0;
}

EDIT teraz kod wyglada tak, co w nim jeszcze jest niepoprawne?
P-143678
carlosmay
» 2016-01-17 19:45:58
C/C++
ofstream plik_docelowy; // dla tego obiektu musisz otworzyc drugi plik i do niego zapisac wiersz[/cpp]
P-143680
Kacper78
Temat założony przez niniejszego użytkownika
» 2016-01-17 20:09:47
Mam problem z wpisywaniem tresci do pliku, co jest nie tak z kodem na chwile obecną?

C/C++
#include <iostream>
#include <fstream>
#include <string>

using namespace std;

int main()
{
   
    string tekst;
   
   
    ifstream mojplik( "abc.txt" );
    ofstream mojplik2( "abc2.txt" );
    if( mojplik.is_open() )
    {
        while( mojplik.good() )
       
        {
           
            getline( mojplik, tekst, '.' );
            cout << tekst << endl;
            ofstream mojplik2;; // tutaj nie wiem jak to zrobić żeby wpisywalo zawartość do abc2.txt.Tworzy się plik abc2 ale jest pusty. Proszę, wyedytujcie mi tą linijke aby ładnie działało
           
        }
       
        mojplik.close();
    }
    return 0;
}
P-143684
carlosmay
» 2016-01-17 20:13:06
C/C++
ifstream mojplik( "abc.txt" );
ofstream mojplik2( "abc2.txt" );
if( mojplik.is_open() && mojplik2.is_open() )
{
    while( mojplik.good() && mojplik2.good() )
   
    {
       
        getline( mojplik, tekst, '.' );
        cout << tekst << endl;
        //cin >> mojplik2; // tutaj nie wiem jak to zrobić żeby wpisywalo zawartość do abc2.txt
        mojplik2 << tekst << '\n';
    }
   
    mojplik.close();
    mojplik2.close();
}
P-143685
Kacper78
Temat założony przez niniejszego użytkownika
» 2016-01-17 20:32:20
Jeszcze mały błąd kosmetyczny, da się zrobić tak aby kropek nie kasowało tylko zostawały one na końcu zdań?
P-143687
pekfos
» 2016-01-17 21:04:43
Wyświetlaj je na koniec? Dopisz do stringa?
P-143691
« 1 »
  Strona 1 z 1