• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

Co robię źle z odczytywaniem z pliku?

+1 głos
348 wizyt
pytanie zadane 12 września 2015 w C i C++ przez k222 Nałogowiec (30,150 p.)
Uczę się obsługi plików i jedna rzecz mi nie działa. Mam funkcję:

 plik.open("kod.txt", ios::in);
    if(plik.good()==false)
    {
        cout<<"Nie udalo sie otworzyc pliku";
        exit(0);
    }

+ reszta programu i wszystko jest ok, czyta, wyświetla itp ale jak chcę odczytać plik znajdujący się w inym folderze i podaję do niego ścieżkę dostępu np.

 plik.open("C:\Users\User\Desktop\kod.txt", ios::in);

to wywala mi błąd że nie udało się odczytać pliku (funkcja good wywala false). Zmieniam tylko to więc czemu jak plik jest w folderze z programem to działa a jak nie to nie działa?

Tutaj cały (niedziałający) program:

 

#include <iostream>
#include <fstream>
#include <cstdlib>

using namespace std;

int main()
{
    string slowo, linia;
    fstream plik;

     plik.open("C:\Users\User\Desktop\kod.txt", ios::in);
    if(plik.good()==false)
    {
        cout<<"Nie udalo sie otworzyc pliku";
        exit(0);
    }

    while(getline(plik,linia))
    {
        cout<<linia<<endl;
    }

    plik.close();

    return 0;
}

1 odpowiedź

+2 głosów
odpowiedź 12 września 2015 przez niezalogowany
wybrane 13 września 2015 przez k222
 
Najlepsza

W  ścieżce do pliku używasz znaku: '\', podczas gdy ten znak sygnalizuje, że teraz w ciągu znaków wystąpi znak specjalny ("\n", "\t", etc), jeżeli chcesz koniecznie użyć '\', to musisz używać go w tej formie: "\\" lub zamiast '\' użyj '/'.

Np.
 

plik.open(C:\\Users\\User\\Desktop\\kod.txt");

lub

plik.open(C:/Users/User/Desktop/kod.txt");

 

komentarz 13 września 2015 przez k222 Nałogowiec (30,150 p.)
Dzięki - zamiana zaku '\' na '/' pomogła i teraz działa - zasugerowałem się tym, że we właściwościach plikuużywany jest znak '\' i crobiłem tylko ctrl+c ctrl+v a tu prosze - surprise.
komentarz 22 marca 2016 przez Nadann Początkujący (290 p.)
Dzieki wielkie. Mialam problem z odczytem z pliku txt i pomoglo podanie calej sciezki :)

Podobne pytania

0 głosów
1 odpowiedź 400 wizyt
pytanie zadane 29 sierpnia 2016 w C i C++ przez plkpiotr Stary wyjadacz (12,420 p.)
0 głosów
1 odpowiedź 598 wizyt
pytanie zadane 5 czerwca 2022 w C i C++ przez wasiu Nowicjusz (140 p.)
0 głosów
0 odpowiedzi 965 wizyt
pytanie zadane 15 kwietnia 2017 w Java przez plkpiotr Stary wyjadacz (12,420 p.)

93,733 zapytań

142,669 odpowiedzi

323,287 komentarzy

63,293 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj

Twierdza Linux. Bezpieczeństwo dla dociekliwych

Aby uzyskać rabat -10%, użyjcie kodu pasja-linux, wpisując go w specjalne pole w koszyku.

...