Duplicate Lines Finder 2.0

0

Niektórzy czytelnicy mojego bloga zapewne pamiętają moje początki z językiem C++, kiedy to napisałem Duplicate Lines Findera 1.0, a krótko potem – 1.1. W dniu dzisiejszym – 12 lutego 2012 roku – ponad półtora roku po wydaniu ostatniej wersji, tj. 1.1 program powraca – tym razem nowy, odświeżony, jako już Duplicate Lines Finder 2.0.

Zmian jest dosyć sporo. Przede wszystkim nastąpiła zmiana języka programowania, w którym wspomniany program jest napisany – na język Java, oraz zmiana licencji – z Freeware na GNU GPL. Oznacza to jednocześnie, że program jest teraz Open source!

Kolejną ważną zmianą jest wielojęzyczność. Java umożliwiła mi bardzo łatwą zmianę języka w zależności od tego, jaki język w systemie ma aktualnie ustawiony użytkownik programu. Aktualnie jedynymi obsługiwanymi językami są polski oraz angielski, ale… Może kiedyś się to zmieni? 🙂

Następną zmianą jest nowy interfejs. Wybór plików – docelowego oraz źródłowego – odbywa się obecnie poprzez 2 przyciski. Zrezygnowałem z etykiety, pola tekstowego i przycisku tak, jak to wyglądało w poprzednich wersjach – teraz funkcje tych wszystkich widżetów przejął jeden przycisk. Oprócz tego dodałem pasek postępu pokazujący postęp wykonywania operacji. Jest on połączony z przyciskami Start i Anuluj w następujący sposób: po wciśnięciu przycisku Start, zamienia się on w przycisk Anuluj. Po opuszczeniu kursorem obszaru tegoż przycisku, zamienia się on w progressbar. Po najechaniu myszką na pasek, zamienia się on z powrotem w przycisk Anuluj. Prosto i minimalistycznie 🙂 Oprócz tego rozbudowałem również statystyki.

Z pozostałych zmian warto zaznaczyć, że teraz separator nie musi być już pojedynczym znakiem – może być dowolnej długości. Program teraz działa – chyba, nie robiłem dokładnych testów – szybciej.

To tyle o nowym Duplicate Lines Finderze. Mam nadzieję, że Wam się spodoba 🙂

Ah – warto również wspomnieć, że opublikowałem aplikację również na angielskiej wersji m4txbloga.

Zapraszam więc do pobieralni.

Pozdrawiam 🙂

Aktualizacje!

0

GBX Thumb Extractor

Wreszcie obiecywany GBX Thumb Extractor ujrzał światło dzienne. Prawie, bo niestety potrzebuje do działania kilku „składników”. Przede wszystkim wymagany jest program jpegtran.exe, który musi znajdować się w głównym katalogu programu, a oprócz tego ścieżka do pliku wyjściowego nie może zawierać spacji. W przeciwnym wypadku wynikowy obraz będzie odwrócony w pionie. No cóż, program jednak działa poprawnie.

Przede wszystkim zdecydowałem się na użycie interfejsu identycznego, jak w przypadku Duplicate Lines Finder’a, spora część kodu pochodzi też z tego programu. Jeszcze wspomnę o tym odwracaniu w pionie – jeżeli ktoś zna jakiś sposób na to odwracanie bez użycia zewnętrznych aplikacji, w C++ oraz współpracujący z kompilatorem MinGW32 – proszę o kontakt, nawet poprzez komentarz.

No, więc kończę tu opowiadanie o GBX Thumb Extractorze, żeby znowu nie wyszło jak z Duplicate Lines Finder’em i zapodaję link do progsa:

Link do programu GBX Thumb Extractor

SmsPrice 1.1

SmsPrice doczekał się aktualizacji. Zmiany są głównie kosmetyczne, można o nich poczytać w Changelog’u, ale usunąłem też trochę denerwujący błąd, który zawiesza program. Nie będę się tu rozpisywał, bo w zasadzie nie ma o czym, zapraszam do ściągnięcia najnowszej wersji:

Link do programu SmsPrice

Duplicate Lines Finder 1.1

No tak, wydałem GBX Thumb Extractor’a, zaaktualizowałem SmsPrice, możnaby się domyślać, że aktualizacji doczeka także Duplicate Lines Finder. Zgadza się.

Tu zmian jest więcej: przede wszystkim dodałem możliwość wyboru separatora – dzięki temu, jeżeli ciągi znaków są oddzielone np. spacjami, można w takim pliku także wyeliminować duplikaty. Dodałem także statystyki, dzięki którym dokładnie widać, ile zyskano miejsca, ile w pliku było duplikatów, oraz jak długo program wykonywał swoją operację. Dodałem dymki z informacjami, co dany przycisk lub coś innego robi. Wprowadziłem ignorowanie pustych linii a także wsparcie dla Windows’owego systemu kodowania – program mógł czasami nie działać, gdyż Windows nieco inaczej koduje znak nowej linii. O reszcie zmian można przeczytać w Changelog’u, a teraz po raz trzeci i ostatni w tym wpisie zarzucam link:

Link do programu Duplicate Lines Finder

Miłego używania! 😉

Premiera programu Duplicate Lines Finder

0

Witam ponownie bardzo nieliczne osoby czytające tegoż bloga.

Dziękuję, że czytając ten wpis zdobyłeś się na trud odwiedzenia strony. No, ale przejdę do rzeczy. W dniu dzisiejszym ogłaszam premierę programu którego ukończyłem. Zwie się on Duplicate Lines Finder, no i służy – jak nazwa wskazuje – do wyszukiwania zduplikowanych linii w plikach tekstowych, ich usunięciu, a następnie zapisie do nowego pliku.

Przed napisaniem tego programu sporadycznie zdarzało mi się, że potrzebowałem właśnie usunąć duplikaty w plikach tekstowych. Było to zadanie żmudne i nudne, więc napisałem ten program. Nie jest on szczególnie skomplikowany, gdyż jego główne okno składa się jedynie z dwóch etykiet, dwóch pól edycyjnych i trzech przycisków. Ale najważniejsze, że robi to, co ma robić i robi to bezbłędnie. Chyba. Niestety, ale obsługa plików kosztowała mnie ponad 400KB, doliczając kod oraz ikonę wyszło mi 491.

W moim komputerze – podam tylko procesor, gdyż on jest odpowiedzialny za zrealizowanie głównego zadania – mam procesor dwurdzeniowy Intel Core 2 Duo E8400 ~3GHz. Przetworzenie pliku o rozmiarze 296KB zajmuje około 3 sekundy, a program korzysta niestety tylko z jednego rdzenia. Lecz wyobraź teraz sobie, ile czasu zajęło by Ci to samo, robiąc to ręcznie… Sprawdzić, które z ponad 26 000 linii się powtarzają, i w ogóle zdecydować się na coś takiego to nie lada sztuka. Jestem pewien, że żaden z ludzi nawet nie zdecydowałby się na coś takiego, a nawet jeśli to zrezygnowałby już przy pierwszej linii…

Obsługa wersji 1.0 wygląda tak: uruchom program, wybierz plik źródłowy, wybierz plik docelowy, wciśnij przycisk, poczekaj i zamknij program. Każdy sobie z nią poradzi. Nasuwa się natomiast pytanie: czemu nie zaimplementowałem w programie paska postępu?
No cóż, chciałem, ale jak go zrobiłem, to długość procesu wzrosła z 3 do około 30 sekund… Coś dziwnie prockożerny ten pasek jest!

O, no popatrz, dotrwałeś do końca… Ciężko było, żebyś odwiedził ten blog, ale to, że przeczytałeś cały ten wpis jest już prawdziwym cudem… Kurde, ale się rozpisałem! No, ale teraz już zapodaję link do programu:

Link do programu Duplicate Lines Finder

Pozdro!