Elektroda.pl
Elektroda.pl
X
Elektroda.pl
Proszę, dodaj wyjątek dla www.elektroda.pl do Adblock.
Dzięki temu, że oglądasz reklamy, wspierasz portal i użytkowników.

c++ - Odczyt z pliku binarnego do formatu string

mikroice90 14 Maj 2013 13:45 2325 4
  • #1 14 Maj 2013 13:45
    mikroice90
    Poziom 13  

    witam forumowiczów, czy w ten sposób można odczytać dane z pliku binarnego i zapisać je w stringu? Bo chyba nie działa. Z góry dzięki za pomoc.

    Kod: cpp
    Zaloguj się, aby zobaczyć kod


    mam plik binarny o nazwie test i lokalizacji C:\test.bin
    string sciezka = "C:\test.bin";
    Plik test.bin stworzyłem edytorem heksadecymalnym(pierwsze i ost 32b z 512 są "1" reszta to "0"). Gdzie tkwi błąd?
    Dalej próbowałem ze swoim kodem i przy cout<<message; mam "nic"

    0 4
  • #2 14 Maj 2013 14:54
    beluosus
    Poziom 25  

    getline jak sama nazwa mówi służy do pobierania linii. Pliki binarne w teorii nie mają linii (mimo, że mogą zawierać '\n' to interpretujemy to jak kolejny bajt, a nie nową linię). Wykorzystaj std::ifstream::read(). Poza tym trzymanie danych binarnych w stringu nie jest dobrym pomysłem. Użyj std::vector<char> lub od biedy char[].

    0
  • #3 14 Maj 2013 17:09
    mikroice90
    Poziom 13  

    Od to string przecież to tablica charów. A w takiej postaci mi jest właśnie potrzebny do dalszych obliczeń. Jak użyć tego read()?

    0
  • #4 14 Maj 2013 17:19
    Eagle
    Poziom 23  

    U mnie zazwyczaj działa w takich przypadkach najechanie kursorem na metodę której opis potrzebuję i naciśnięcie F1. Jeśli to nie zadziała to dziecinnie proste jest znalezienie tego w dokumentacji biblioteki.

    A możesz się jeszcze podzielić wiedzą jakie obliczenia można robić na stringach ?

    Żeby nie być gołosłowny sprawdziłem czy ciągle działa opisany sposób i działa: std::istream::read

    0
  • #5 14 Maj 2013 18:06
    mikroice90
    Poziom 13  

    W pliku binarnym mam ciąg bitów, który potem dzielę na bloki zamieniam na system dziesiętny wykonuję obliczenia i znów zapisuje do pliku binarnego. Taka funkcja skrótu.

    Dodano po 27 [minuty]:

    dziękuję taki kod działa

    Kod: cpp
    Zaloguj się, aby zobaczyć kod

    1