Jak zakodować ciąg do Base64 za pomocą Java

Autor: Janice Evans
Data Utworzenia: 25 Lipiec 2021
Data Aktualizacji: 13 Móc 2024
Anonim
Base64 encoding/decoding in java 8
Wideo: Base64 encoding/decoding in java 8

Zawartość

Inne sekcje

Base64 to metoda kodowania każdych 3 bajtów danych wejściowych na 4 bajty danych wyjściowych; jest powszechnie używany do kodowania zdjęć lub dźwięku w celu wysyłania wiadomości e-mail (chociaż czasy 7-bitowych linii transmisyjnych w większości się skończyły) oraz sposób na ukrycie uwierzytelniania stron internetowych (nazwy użytkownika i hasła) przed przypadkowym podsłuchiwaniem. Oto przykład kodowania kodera Base64 w Javie, wieloplatformowym języku programowania. Ten przykład i testowy ciąg kodujący zostały zapożyczone z artykułu w Wikipedii.

Kroki

  1. Wprowadź plik informacji i nazwy
  2. Uruchom swój edytor, taki jak Notatnik lub vi, i wprowadź wstępne, takie jak deklaracja klasy i znane stałe. Nazwij plik Base64.java.

  3. Te wartości stałe są określone, więc artykuł stwierdza, w odpowiednich dokumentach RFC. Zasadniczo dobrym pomysłem jest przeczytanie wszystkich odpowiednich specyfikacji RFC przed rozpoczęciem kodowania.
  4. Koduj za pomocą getBytes (). Traktowanie znaków jako bajtów oznacza, że ​​znaki wielobajtowe, takie jak japoński lub chiński, nie będą poprawnie kodowane. Dlatego musimy użyć metody GetBytes () metody String, aby przekonwertować znaki Unicode bieżącej lokalizacji na bajty przed rozpoczęciem kodowania.
    • Jeśli pracujesz nad dokumentem w języku japońskim w języku amerykańskim w języku angielskim, musisz określić ustawienia regionalne dla danych wyjściowych funkcji getBytes (), na przykład getBytes („UTF-8”).


  5. Dowiedz się, ile potrzeba bajtów uzupełniających. Przydaje się tutaj operator modulo języka Java,%. Zadeklarujmy również nazwę i parametry podprogramu, gdy już to zrobimy.

  6. Użyj wartości, aby uzupełnić dane wejściowe o wartość null. Zauważ, że jeśli wypełnienie nie jest potrzebne, żadne nie jest dodawane, ponieważ bierzemy moduł 3 po raz drugi, zamieniając 3 na 0.
  7. Teraz dochodzimy do mięsa: pakowanie po trzy bajty na raz w 24-bitową liczbę całkowitą, a następnie wyodrębnianie 6-bitowych indeksów do łańcucha kodującego. Te liczby nie są magiczne: 24 dzieli się na 6 dokładnie 4 razy, a 6 bitów może zawierać wartości od 0 do 63, które mogą indeksować dowolną wartość w 64-bajtowym łańcuchu kodującym.
  8. Spakuj wyjście po wypełnieniu go, wstawiając CRLF na wymaganych 76-bajtowych granicach, używając oddzielnego podprogramu dla przejrzystości.
  9. Sprawdź, czy chcesz dodać główną procedurę do celów testowych. Zwykle jest to dobry pomysł przed wysłaniem swojego kodu do publicznego użytku.
  10. Oto gotowy moduł:
  11. Skompiluj go, używając javac, gcj, like lub tym podobnych; i przetestuj, używając cytatu Hobbesa z artykułu w Wikipedii:
  12. Oto wynik:
  13. Upewnij się, że pasuje dokładnie. To albo oznacza, że ​​oba programy są błędne, albo oba mają mniej więcej rację. W tym miejscu możesz zechcieć ponownie odwiedzić artykuł w Wikipedii i przeczytać powiązane RFC, aby sprawdzić, czy coś przeoczyliśmy.

Pytania i odpowiedzi społeczności



Jak dekodować z Base64 na String w Javie?

Na przykład, zmienna Base64 A = 5; Ciąg zmiennaB = zmiennaA. Spróbuj tego pseudokodu.

Porady

  • Nie myśl, że przed kodowaniem zawsze musisz coś do końca zrozumieć. W miarę postępów sprawy stają się wyraźniejsze.
  • Java jest w porządku jako język ogólnego przeznaczenia, a w przypadku urządzeń takich jak telefony komórkowe może być jedyną opcją programisty, ale może się okazać, że składnia JavaScript lub Python jest bardziej zwięzła i wydajniejsza. Różne języki mają swoje mocne i słabe strony.
  • Spróbuj napisać metodę towarzyszącą decode () dla tego modułu!
  • Podczas gdy odczyt odpowiednich specyfikacji RFC jest konieczny dla kodu produkcyjnego, nadmiar informacji może być przytłaczający; czasami najlepszym sposobem jest przejrzenie ich, kodowanie zgodnie z tym, co rozumiesz, a następnie powrót i sprawdzenie funkcjonalności punkt po punkcie względem obowiązkowych wymagań RFC.

Powiązane artykuły

  • Zostań programistą Java
  • Napisz swój pierwszy program w Javie

to wiki, co oznacza, że ​​wiele artykułów jet napianych przez kilku autorów. Aby tworzyć ten artykuł, 37 oób, niektóre anonimowe, uczetniczyło w jego edycji i ulepzaniu w miarę up...

Jak uszczelnić drewno

Peter Berry

Móc 2024

W tym artykule: Hydroizolacja drewna olejem Użycie produktu hydroizolacyjnego do drewna Uzczelnianie drewna bejcą 8 Referencje Każda nieobrobiona powierzchnia drewna może gnić, wypaczać ię lub pękać. ...

Interesujący Dzisiaj.