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

Przeszukiwanie pliku txt i zliczanie numerów

0 głosów
752 wizyt
pytanie zadane 31 stycznia 2019 w C i C++ przez Alan Kruszyński Obywatel (1,410 p.)

Mam funkcję która tworzy paragon sklepowy. Paragon ma swój numer, wartość jako sumę pozycji, pozyjce czyli towary. Paragony są zapisywane do pliku mniej więcej tak:

nr paragonu
wartosc
pozycja 1
pozycja 2
pozycja 3
nr nastepnego paragonu...

Pozycji nie zawsze będzie trzy, a przy starcie programu chcę wczytywać aktualną liczbę paragonów w bazie dokumentów. Jak skonstruować funkcję która przeszuka plik i zliczy linie w których występują numery paragonów?

2 odpowiedzi

0 głosów
odpowiedź 31 stycznia 2019 przez pr0way Nałogowiec (42,220 p.)
Jeżeli to ma być plik tekstowy i nie ma z góry narzuconej żadnej struktury to wydaje mi się że najłatwiej będzie dodać jakiś nietypowy znak na początku przed "nr paragonu", niech to będzie np. # i jeżeli c++ znajdzie taki hash w tekście to weźmie wszystkie cyfry do końca linii (zaraz za nim). Liczbę paragonów określisz na podstawie tego ile "#" będzie się znajdowało w pliku (czy też numerów paragonów). Co do samej funkcji myślę, że to pomoże:

http://cpp0x.pl/kursy/Kurs-C++/Poziom-3/Wyszukiwanie-frazy-w-tekscie/352
0 głosów
odpowiedź 1 lutego 2019 przez dxr Obywatel (1,240 p.)
Zrób tak, żeby numery paragonów zaczynały się od jakiejś liczby i były inkrementowane co 1. Wtedy wystarczy, że wczytasz pierwszą linię z tego pliku i masz na talerzu liczbę paragonów. Jest to sposób znacznie wydajniejszy od przeszukiwania całego pliku.

Możesz też dodać możliwość wyciągnięcia z bazy paragonu o podanym numerze. Wtedy numery paragonów można tworzyć tak:

numer_paragonu.liczba_pozycji

Wtedy szukasz w pliku numeru paragonu i na stdout wyrzucasz liczbę linijek równą liczba_pozycji + 2

Podobne pytania

0 głosów
1 odpowiedź 524 wizyt
pytanie zadane 30 maja 2017 w C i C++ przez NyguseK Użytkownik (650 p.)
0 głosów
1 odpowiedź 327 wizyt
0 głosów
1 odpowiedź 424 wizyt

93,604 zapytań

142,526 odpowiedzi

322,993 komentarzy

63,087 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

Kursy INF.02 i INF.03
...