Błąd podczas zapisywania stringa do pliku

0

mam problem z zapisaniem stringa do pliku

 
#include <iostream>
#include <stdio.h>      
#include <stdlib.h>     
#include <time.h>  
#include <fstream>
#include <string>
#include <cstdio>
#include <conio.h>

.....

ifstream plik_zapis;
plik_zapis.open( sciezka_zapis.c_str(), ios::out );
......
string zapis ="Jakieś tam zdanie\n";
plik_zapis << zapis;

Pojawia sie błąd:
[Error] no match for 'operator<<' (operand types are 'std::ifstream {aka std::basic_ifstream<char>}' and 'std::string {aka std::basic_string<char>}')

odczytywanie z innego pliku, który ejst w innym meijscu w kodzie działa dobrze.

0

Może wpisz to co podałeś do osobnego pliku i odpal. To co podałeś musi działać. Przeoczyłem patrz post niżej: http://4programmers.net/Forum/Newbie/228698-zapisywanei_do_pliku?p=1007536#id1007536

0

na pewno?
A nie podałem czasami złego typu, bo teraz zauważyłem w jakimś tutorialu że jest uzywany typ ofstream i wtedy sie kompiluje tyle, że się plik nie otwiera. Czy to dlatego, ze go nie ma?

1

Nie działa, gdyż dla szablonu basic_ifstream nie ma zdefiniowanego operatora <<. Klasa std::ifstream służy do odczytywania danych z pliku, a nie ich zapisywania. Zapewne chcesz skorzystać z klasy std::ofstream.

1 użytkowników online, w tym zalogowanych: 0, gości: 1