Чекор по чекор
Почетни чекори со Java
Објектно оријентирани концепти во Јава - Прв дел
Објектно оријентирани концепти во Јава - Втор дел
Објектно оријентирани концепти во Јава - Трет дел
Јава сервлети - Прв дел
Единствен Јава објект (singleton)
Најчести 10 грешки што ги прават Java програмерите
повеќе...
Што е тоа ...
... IDE
... Tomcat
... објект?
... класа?
... наследување?
... интерфејс?
... наследување? (прашања и одговори)
повеќе...
За загревање
Нов проект во Eclipse?
Примитивни податочни типови
Променливи
Оператори
Доделувачки, аритметички и Unary оператори
Оператори за еднаквост, релации и услови
Изрази, искази и блокови
повеќе...
Како да ...
... конвертирам java.sql.Timestamp во java.util.Date
... зададам формат на датум
... ковертирам „long“ во HEX и обратно
... прочитам датотека и променам стринг
... креирам ZIP датотека
... поврзам Apache и Tomcat користејќи mod_jk
... пратам недефиниран број на атрибути до некоја метода
повеќе...
Java преку примери
new Socket(String addr,int port)
new URL(String address)
new URL(String protocol, String host, int port, String file)
CommPort: getInputStream()
CommPortIdentifier: getPortIdentifiers()
Statement: executeQuery(String sql)
Statement: getMaxRows()
повеќе...
Грешка
Нов напис
Рубрика:
Наслов:
  
  

страна број:123
... ковертирам „long“ во HEX и обратно
прегледано:  150202
 вкупно гласови:  0
 средна оценка:  -
 коментари:  0
Методите можат да се најдат при конвертирање на MD5 или SHA-1 вредности.


    public static long hexToLong(byte[] nizaOdBajti) {

        if (nizaOdBajti.length > 16) {
            throw new IllegalArgumentException("Nizata od bajti e predolga (maksimum 16 elementi)");
        }
        long rezultat= 0;
        for (int i = 0; i < nizaOdBajti.length; i += 2) {
            byte b1 = (byte) (nizaOdBajti[i] "

            b1 -= 48;
            if (b1 > 9) b1 -= 39;

            if (b1 < 0 || b1 > 15) {
                throw new IllegalArgumentException("Nevalidana hex vrednost: " + nizaOdBajti[i]);
            }

            b1 <<=4;

            byte b2 = (byte) (nizaOdBajti[i + 1] "
            b2 -= 48;
            if (b2 > 9) b2 -= 39;

            if (b2 < 0 || b2 > 15) {
                throw new IllegalArgumentException("Nevalidana hex vrednost: " + nizaOdBajti[i + 1]);
            }

            rezultat |= (((b1 "

            if (i + 2 < nizaOdBajti.length) rezultat<<= 8;
        }

        return rezultat;
    }

    public static byte[] longToHex(final long broj) {
        long v = broj "

        byte[] rezultat = new byte[16];
        Arrays.fill(rezultat, 0, rezultat.length, (byte)0);

        for (int i = 0; i < rezultat.length; i += 2) {
            byte b = (byte) ((v "

            byte b2 = (byte) (b "
            byte b1 = (byte) ((b >> 4) "

            if (b1 > 9) b1 += 39;
            b1 += 48;

            if (b2 > 9) b2 += 39;
            b2 += 48;

            rezultat[i] = (byte) (b1 "
            rezultat[i + 1] = (byte) (b2 "

            v <<= 8;
        }

        return rezultat;
    }


Примери:

public void testZaHexToLong() throws Exception {
  System.out.println("-7057002501900618110L=" + String.valueOf(hexToLong("9e107d9d372bb682".getBytes())));
  System.out.println("-7057002501900618110L=" + String.valueOf(hexToLong("ffd93f1687604926".getBytes())));
}

public void testLongToHex() throws Exception {
System.out.println("9e107d9d372bb682=" + new String(longToHex(-7057002501900618110L)));
System.out.println("ffd93f1687604926=" + new String(longToHex(-10908158098650842L)));
}
 
Коментирај
автор: Анонимус
Анонимните коментари ќе бидат објавувани веднаш после нивната проверка.
За да вашиот коментар биде веднаш валиден претходно пријавете се или креирајте свој профил


пребарување
најди
 
Форум
 
JugMK
GetJava Download Button
http://www.eclipse.org
 
 
 
 
Copyrights © 2006 - 2024 by Java.com.mk
Права и правила за користење на java.com.mk
Контакт адреса:
contact AT java.com.mk
Powered by Supernova v.0.70 beta
JavaTM и Java-базираните ознаки се трговски марки или регистрирани трговски марки на Sun Microsystems, Inc. во САД и други држави. Java.com.mk никако не соработува со Sun Microsystems, Inc.
Сите други трговски марки се сопственост на нивните сопственици.