Numeracja znaków w pliku(używanie metody tellg i seekg)
Ostatnio zmodyfikowano 2016-04-02 17:54
enigmatycznyclay Temat założony przez niniejszego użytkownika |
Numeracja znaków w pliku(używanie metody tellg i seekg) » 2016-04-02 16:18:42 Korzystając z metody tellg zauważyłem dziwną rzecz. W pliku który składa się tylko z jednego wiersza danych nie ma żadnych problemów w korzystaniu z metod seekg i tellg, ale pojawia się problem gdy w pliku jest kilka wierszy danych(nawet pustych). Przed pobraniem do zmiennej pierwszego znaku z pliku metoda tellg zwraca poprawną wartość=0, ale po wczytaniu pierwszego znaku tellg zwraca wartość zależną od ilości wierszy w plik. Np.: Plik ma trzy wiersze. Używamy tellg i zostaje zwrócona wartość 0(czyli ok). Pobieramy pierwszy znak (też jest ok). Używamy tellg i wartość zwrócona wynosi 3 zamiast 1. Pobieramy znak. Używamy tellg i zwrócona wartość wynosi 4 zamiast 2 itd. Dodam, że pobieranie znaków z pliku działa bez problemu, chodzi tylko o ich numeracje. Czy mógłby mi to ktoś wytłumaczyć. Dlaczego tak się dzieje? |
|
jankowalski25 |
» 2016-04-02 17:54:38 Zapewne przejście do nowej linii składa się z więcej, niż jednego znaku. Strzelam, że używasz na przykład "\r\n" zamiast "\n" . |
|
« 1 » |