Jak mogę przekonwertować następujące elementy?
2934 (liczba całkowita) do B76 (hex)
Pozwól mi wyjaśnić, co próbuję zrobić. Mam w bazie danych identyfikatory użytkowników, które są przechowywane jako liczby całkowite. Zamiast pozwolić użytkownikom odwoływać się do ich identyfikatorów, chcę pozwolić im używać wartości szesnastkowej. Głównym powodem jest to, że jest krótszy.
Więc nie tylko muszę przechodzić od liczby całkowitej do liczby szesnastkowej, ale także muszę przechodzić od wartości szesnastkowej do liczby całkowitej.
Czy jest łatwy sposób to zrobić w C #?
c#
hex
type-conversion
kodeta
źródło
źródło
Integer
skróceniem wdrożenia? Jeśli jedynym celem jest, aby identyfikator użytkownika był jak najkrótszy, chciałbym wiedzieć, czy istnieje jakiś inny wyraźny powód, dla którego konkretnie potrzebujesz konwersji szesnastkowej - chyba że go oczywiście przegapiłem. Czy jest jasne i znane (jeśli jest to wymagane), że identyfikatory użytkowników są w rzeczywistości szesnastkową reprezentacją rzeczywistej wartości?Odpowiedzi:
z http://www.geekpedia.com/KB8_How-do-I-convert-from-decimal-to-hex-and-hex-to-decimal.html
źródło
Posługiwać się:
Zobacz : Konwersja między łańcuchami szesnastkowymi a typami numerycznymi (Podręcznik programowania w języku C #), aby uzyskać więcej informacji i przykładów.
źródło
Spróbuj wykonać poniższe czynności, aby przekonwertować go na hex
I jeszcze raz
źródło
źródło
Naprawdę jednak kwestionuję wartość tego. Twoim celem jest zmniejszenie wartości, co będzie, ale nie jest to celem samym w sobie. Naprawdę masz na myśli albo ułatwić zapamiętanie, albo łatwiejsze pisanie.
Jeśli masz na myśli łatwiej zapamiętać, to robisz krok do tyłu. Wiemy, że wciąż ma ten sam rozmiar, tylko zakodowany inaczej. Ale użytkownicy nie będą wiedzieli, że litery są ograniczone do „A-F”, a zatem identyfikator zajmie dla nich takie samo miejsce pojęciowe, jak gdyby litera „AZ” była dozwolona. Zamiast zapamiętywać numer telefonu, przypomina zapamiętywanie identyfikatora GUID (o równoważnej długości).
Jeśli masz na myśli pisanie, zamiast móc korzystać z klawiatury, użytkownik musi teraz korzystać z głównej części klawiatury. Prawdopodobnie będzie trudniej pisać, ponieważ nie będzie to słowo, które rozpoznają ich palce.
O wiele lepszą opcją jest umożliwienie im wybrania prawdziwej nazwy użytkownika.
źródło
Do Hex:
Do int:
źródło
Stworzyłem własne rozwiązanie do konwersji int na ciąg Hex iz powrotem, zanim znalazłem tę odpowiedź. Nic dziwnego, że jest znacznie szybszy niż rozwiązanie .net, ponieważ narzut kodu jest mniejszy.
Kod czasowy:
Wyniki:
źródło
RAMY NETTO
PASCAL >> C #
Coś ze starej szkoły bardzo stara procedura pascala przekonwertowana na C #
źródło
Wydrukuj liczbę całkowitą w wartości szesnastkowej z dopełnieniem zerowym (w razie potrzeby):
https://docs.microsoft.com/en-us/dotnet/standard/base-types/how-to-pad-a-number-with-leading-zeros
źródło
int do hex:
hex do int:
źródło