• 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

Aruba Cloud - Virtual Private Server VPS
0 głosów
682 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 Tpk Nałogowiec (40,300 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ź 419 wizyt
pytanie zadane 30 maja 2017 w C i C++ przez NyguseK Użytkownik (650 p.)
0 głosów
1 odpowiedź 288 wizyt
0 głosów
1 odpowiedź 385 wizyt

93,291 zapytań

142,289 odpowiedzi

322,332 komentarzy

62,612 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

Wprowadzenie do ITsec, tom 1 Wprowadzenie do ITsec, tom 2

Można już zamawiać dwa tomy książek o ITsec pt. "Wprowadzenie do bezpieczeństwa IT" - mamy dla Was kod: pasja (użyjcie go w koszyku), dzięki któremu uzyskamy aż 15% zniżki! Dziękujemy ekipie Sekuraka za fajny rabat dla naszej Społeczności!

...