Hex to decimal value

Is there any method to convert a hex no to Decimal no.

Hope This solves Your Problem:
import java.io.*;
public class ConHexToInt
     public static void main(String args[])
          String input = new String();
          int decVal;
          System.out.print("Enter an integer(In Hex i.e. 0-9,A,B,C,D,E,F ) value: ");
          try
               input = (new BufferedReader(new InputStreamReader(System.in))).readLine();
          catch (IOException e)
               System.out.println(e.toString());
          try
               //this is static method in java.lang.Integer
               //check API for more details
               decVal = Integer.parseInt(input,16);
               System.out.println(decVal);
          catch(NumberFormatException nfe)
               System.out.println(nfe.toString());

Similar Messages

  • Very Urgent - Converting Character value to Hexa Decimal value

    Hi
    data: lv_stsor_hex(16) type X.
    p_is_ppc_comp_conf-stsor is a char 10 field ***
    <b>write p_is_ppc_comp_conf-stsor to lv_stsor_hex.</b> "<-- Hex Conversion
    In 4.6C version this write statement is working fine but this is obsolete in ECC 6.0
    and its showing syntax error.
    Can anyone tell me how to convert a 10 char length value to a hexa decimal value
    which is of 16 characters length and of type hexadecimal
    Thanks a lot. Points will be rewarded immediately.

    Hi,
    Use the Function module CHAR_HEX_CONVERSION.
    report zeta_hex.
    data: s type string.
    data: h(1) type x.
    data: c(1) type c.
    data: byte(2) type c.
    data: length type i.
      FIELD-SYMBOLS: <DUMMY>.
    s = 'ThisIsAString'.
    length = strlen( s ).
    do length times.
      byte = ( sy-index - 1 ).
      c = s+byte(1).
    * You can do this
      ASSIGN h TO <DUMMY> TYPE 'X'.
      WRITE c TO <DUMMY>.
    * or you can do this
    *  call function 'CHAR_HEX_CONVERSION'
    *       exporting
    *            input     = c
    *       importing
    *            hexstring = h.
      write:/ h.
    enddo.
    Regards
    Sudheer

  • Public int indexOf(int ch, int fromIdx) doesn't work for some decimal value

    I have tested two strings below. These two string are identical, except the first string has a char 'ƒ, which has a decimal value of 131. And the second string has a char 'À', which has a decimal value of 192. I am expecting the same output, which is 11, but I got -1 for the test I did using the first string. In the API for public int indexOf(int ch, int fromIndex), values of ch is in the range from 0 to 0xFFFF (inclusive). It is highly appreciated if anyone could provide any insights on why -1 returned when the first string is tested. Thank you in advance.
    String strHasDecimal131 = "Test value ƒ, it has a decimal value of 131";
    String strHasDecimal192 = "Test value À, it has a decimal value of 192";
    int badDecimal = 131;
    int idxBadDecimal = strHasDecimal131.indexOf( badDecimal, 0);
    System.out.println( "index of Bad Decimal: " + idxBadDecimal );
    The output is: index of Bad Decimal -1
    int badDecimal = 192;
    int idxBadDecimal = strHasDecimal192.indexOf( badDecimal, 0);
    System.out.println( "index of Bad Decimal: " + idxBadDecimal );
    The output is: index of Bad Decimal: 11

    Thank you everyone for your inputs. Following are the print statements and the output: for character 'ƒ' and ' À':
    System.out.println((int)'\u0083' + ", " + (int)'\u00C0' + " print decimal value" );
    Output: 131, 192 print decimal value
    System.out.println((char)'\u0083' + ", " + (char)'\u00C0' + " print character value" );
    Output: ?, À print character value
    According to Latin-1 Supplement table, the first char in the output would have the appearance of ƒ, instead it has the appearance of ?
    System.out.println( (int)'ƒ' + ", "+ (int)'À' + " print integer value");
    Output: 402, 192 print integer value
    I also have tried to print out the decimal value of following char: € &#65533; ‚ ƒ „ … † ‡, according to Latin-1 Supplement table, these char has decimal value of 128 through 135 and hex value 0x0080 through 0x0087. And the output from java println is: 8364 65533 8218 8222 8230 402 8224 8225.
    System.out.println((int)'€' + " " + (int)'&#65533;' + " " + (int)'‚' + " " +(int)'„' + " " + (int)'…' + " " +(int)'ƒ' + " " + (int)'†' + " " + (int)'‡' );
    As I did before, I print out character of decimal value of 128 through 135
    System.out.println((char)128 + " " + (char)129 + " " + (char)130 + " " +(char)131 + " " + (char)132 + " " +(char)133 + " " + (char)134 + " " + (char)135 );
    Output: ? ? ? ? ? ? ? ?
    Not sure why java prints character for decimal value of 128 through 159 differently from what appears in the Latin-1 Supplement table. Any of your inputs are appreciately.

  • Hex to decimal

    there is any function to convert from hex to decimal and vis versa in PL/SQL?
    Regeards
    eng. Amn2000

    create or replace function sf_sys_hex_to_dec (
    p_hexadecimal in varchar2
    ) return number as
    v_character varchar2(1);
    v_decimal number(10);
    v_number pls_integer;
    v_position pls_integer;
    v_length pls_integer;
    begin
    if p_hexadecimal is null then
    sp_sys_internal_error('Hexadecimal value cannot be null.');
    end if;
    v_length := length(p_hexadecimal);
    if v_length > 8 then
    sp_sys_internal_error('Hexadecimal value too big - maximum allowed is "FFFFFFFF".');
    end if;
    v_position := v_length;
    v_decimal := 0;
    loop
    v_character := substr(p_hexadecimal,v_position,1);
    if v_character = '0' then
    v_number := 0;
    elsif v_character = '1' then
    v_number := 1;
    elsif v_character = '2' then
    v_number := 2;
    elsif v_character = '3' then
    v_number := 3;
    elsif v_character = '4' then
    v_number := 4;
    elsif v_character = '5' then
    v_number := 5;
    elsif v_character = '6' then
    v_number := 6;
    elsif v_character = '7' then
    v_number := 7;
    elsif v_character = '8' then
    v_number := 8;
    elsif v_character = '9' then
    v_number := 9;
    elsif v_character = 'A' then
    v_number := 10;
    elsif v_character = 'B' then
    v_number := 11;
    elsif v_character = 'C' then
    v_number := 12;
    elsif v_character = 'D' then
    v_number := 13;
    elsif v_character = 'E' then
    v_number := 14;
    elsif v_character = 'F' then
    v_number := 15;
    else
    sp_sys_internal_error('Invalid hexadecimal character found.');
    end if;
    v_decimal := v_decimal + v_number * 16 ** (v_length - v_position);
    v_position := v_position - 1;
    if v_position = 0 then
    exit;
    end if;
    end loop;
    return(v_decimal);
    end;
    create or replace function sf_sys_dec_to_hex (
    p_decimal in number
    ) return varchar2 as
    v_hexadecimal varchar2(8);
    v_character varchar2(1);
    v_number pls_integer;
    v_integer pls_integer;
    v_module pls_integer;
    v_first_time boolean;
    begin
    if p_decimal is null then
    sp_sys_internal_error('Decimal value cannot be null.');
    end if;
    if p_decimal > 4294967295 then
    sp_sys_internal_error('Decimal value too big - maximum value is 4294967295.');
    end if;
    v_first_time := true;
    v_number := p_decimal;
    loop
    v_integer := trunc(v_number / 16);
    v_module := mod(v_number,16);
    if v_module = 0 then
    v_character := '0';
    elsif v_module = 1 then
    v_character := '1';
    elsif v_module = 2 then
    v_character := '2';
    elsif v_module = 3 then
    v_character := '3';
    elsif v_module = 4 then
    v_character := '4';
    elsif v_module = 5 then
    v_character := '5';
    elsif v_module = 6 then
    v_character := '6';
    elsif v_module = 7 then
    v_character := '7';
    elsif v_module = 8 then
    v_character := '8';
    elsif v_module = 9 then
    v_character := '9';
    elsif v_module = 10 then
    v_character := 'A';
    elsif v_module = 11 then
    v_character := 'B';
    elsif v_module = 12 then
    v_character := 'C';
    elsif v_module = 13 then
    v_character := 'D';
    elsif v_module = 14 then
    v_character := 'E';
    elsif v_module = 15 then
    v_character := 'F';
    end if;
    if v_first_time = true then
    v_hexadecimal := v_character;
    else
    v_hexadecimal := v_character&#0124; &#0124;v_hexadecimal;
    end if;
    if v_integer = 0 then
    exit;
    end if;
    v_number := v_integer;
    v_first_time := false;
    end loop;
    return(v_hexadecimal);
    end;
    null

  • Conersion of hex to decimal

    Hi,
    I am getting a problem. I am trying to convert hex to decimal but the hex number is pretty huge..
    Can anyone suggest a solution.
    DATA: X00(32) TYPE X VALUE
    '00200120022003200420052006200720082009200A200B200C200D200E200F20'.

    Hi,
    Check this,
    DATA :
      in_buffer  TYPE xstring,
      out_buffer TYPE xstring,
      conv       TYPE REF TO cl_abap_conv_in_ce.
    in_buffer =
    '00200120022003200420052006200720082009200A200B200C200D200E200F20'.
    conv = cl_abap_conv_in_ce=>create(
    encoding = 'UTF-8'
    endian = 'L'
    input = in_buffer
    CALL METHOD conv->read(
    EXPORTING n = 5
    IMPORTING data = out_buffer
    WRITE out_buffer.
    Regards
    Adil

  • How do I convert an alpha character from a text string to its decimal value

    I am trying to find out the actual decimal value of a character in a string. So far the code below is as far as I got. I am able to get what I guess is a byte value.
    This is for a school assignment:
    The idea behind what I am trying to do is to design a hash function to store dictionary words into a bucket array hash table, without using the existing Hashtable.class
    so far this is what I can come up with to get some kind of value for each character in the string, however, what I am trying to get is the decimal value for each character.
    public static void main(String args[]){
         String word = "abcdefghijklmnopqrstuvwxyz";
         for (int i=0 ; i < word.length(); i++){
         System.out.print((word.substring(i,i+1)));
         System.out.print("\t : "+((word.substring(i,i+1))).getBytes());
    Thankyou for any replies.

    I'm not sure I completly understand your goal- what you mean by "decimal value", but, if you simply want to find the byte value of each character in a String, you would probably be better off using getBytes() in a way like this,
    byte [] bytes = string.getBytes();
    Then, if you need to map that to a charcter, you could use a for loop like
    for (int x = 0; x < bytes.length; x++) {
    table.put((char)bytes[x], bytes[x]);
    which assummes this bucket class of yours allows primitive data types like so (in Hashtable or HashMap, you would have to use a wrapper Object). I guess, my point reduces to, don't use substring and string search methods (like indexOf()), unless you have to because they are more expensive then just maping the array of bytes and chars, which seems to be what you are interested in doing.

  • Decimal  values for a field in ALV

    Hi,
    I created an ALV report.
    It has a field which will display the calculated value as '103,839,389'. This should be dispalyed as '103,839,389.00' with decimal value, I mean with 2 decimal places, how can this be achieved?
    Thanks,
    Kumar

    hi check this..
    use these in populating the fieldcat..
    it_fieldcat-decimalsfieldname = fieldname
    it_fieldcat-decimalstabname   = tabname
    it_fieldcat- decimals_out   = 2.
    regards,
    venkat

  • ALV report - remove of decimal values

    Hi experts,
    In my ALV report, output table having decimal values, ex:90000.50, i want to display only 90000,
    can help any one inthis.
    Thanks in advance.
    Regards
    Rams

    Hi,
    for that particular field in Field catalog..
    <ur field cat>-decimals_out = 0.
    see this sample code.
    type-pools: slis.
    DATA: begin of itab6 occurs 0,
    chk type c,
    a type p decimals 2,
    b type p decimals 2,
    c type c,
    end of itab6.
    data: ls_fieldcat TYPE slis_t_fieldcat_alv WITH HEADER LINE,
    wa_layout TYPE slis_layout_alv.
    itab6-a = '1.12'.
    itab6-b = '2.25'.
    itab6-c = '+'.
    append itab6.
    append itab6.
    append itab6.
    append itab6.
    ls_fieldcat-fieldname = 'A'.
    ls_fieldcat-seltext_m = 'A'.
    append ls_fieldcat.
    ls_fieldcat-fieldname = 'B'.
    ls_fieldcat-seltext_m = 'B'.
    ls_fieldcat-decimals_out = 0.  "this ll do
    append ls_fieldcat.
    ls_fieldcat-fieldname = 'C'.
    ls_fieldcat-seltext_m = 'C'.
    append ls_fieldcat.
    wa_layout-box_tabname = 'ITAB6'.
    wa_layout-box_fieldname = 'CHK'.
    CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'
    EXPORTING
    i_callback_program = sy-repid
    it_fieldcat = ls_fieldcat[]
    IS_LAYOUT = wa_layout
    TABLES
    t_outtab = itab6[].
    Cheers,
    jose.

  • How to convert a number to FLOAT with 9 decimal values.

    Hi all,
    I need to convert a number like '10.02' to a floating point number with 9 decimal values like '10.022111221'. I think that the right function is TO_BINARY_FLOAT, but how can I obtain 9 decimal values? If I use the following syntax:
    select TO_BINARY_FLOAT(num) from table
    I obtain a floating point values with a variable number of decimal numbers after the ".", instead I need 9 number after ".".
    Regards,
    Maurizio.

    Hi,
    the number I need to select is the result of a product, for example:
    select (Num_A * Num_B) from Table;
    Num_A has 2 decimal numbers, like 12.01 and Num_B could be: 12.111111111.
    Now, Num_A * Num_B = 653.999999994
    but I issue:
    select TO_BINARY_FLOAT(54.00 * 12.111111111) from Table
    I obtain:
    654, a rounded value, but I need 653.999999994.

  • Rounding off to a variable value to 4 decimal values in sap script ouput

    Hi All,
    I have a value getting displayed in sap script output as 235.6789 i want to Round off this variable value to 4 decimal values!
    What is the formatting option need to be used & how!
    Thanks in advance.
    Thanks,
    Deep.

    Hi,
    1.In layout just call that variable, where you need like:
    &variable(.4)&.
    Just see these:
    &symbol(Z)&  Omit Leading Zeros 
    &symbol(S)&  Omit Leading Sign 
    &symbol(<)&  Display Leading Sign to the Left 
    &symbol(>)&  Display Leading Sign to the Right 
    &symbol(C)&  Compress Spaces 
    &symbol(.N)&  Display upto N decimal places 
    &symbol(T)&  Omit thousands separator 
    &symbol(R)&  Right justified 
    &symbol(I)&  Suppress output of the initial value
    Regards,
    If helpful reward with points(Don't forget).

  • Loading decimal  value to an infoobject of type char

    I have an extract structure with field timestamp, which is of type dec and length 15. Now i want to load this value to an infoobject in ODS. But this infoobject is of type char and length 18. when infopackage loading is scheduled it is giving the following error. Record 1 :InfoObject /BIC/IFITMSTMP does not contain alpa-conforming value 20061206084944.
    Is it because i tried to move a dec valu into a char field with a different length? If so  how will i load a decimal value of length 15 to a char of length 18. Can anyone please help me with this?
    Thanks in advance.

    if u r using BI7.0
    go to the datasource of the cube
    in the general info tab of the datasource
    there is a check box with PSA not typed
    check it
    if u check it all the values from the external source will be converted into character format irrespective of their data type

  • Loading a decimal value to an infoobject of type char

    I have an extract structure with field timestamp, which is of type dec and length 15. Now i want to load this value to an infoobject in ODS. But this infoobject is of type char and length 18. when infopackage loading is scheduled it is giving the following error. Record 1 :InfoObject /BIC/IFITMSTMP does not contain alpa-conforming value 20061206084944.
    Is it because i tried to move a dec valu into a char field with a different length? If so  how will i load a decimal value of length 15 to a char of length 18. Can anyone please help me with this?
    Thanks in advance.

    if u r using BI7.0
    go to the datasource of the cube
    in the general info tab of the datasource
    there is a check box with PSA not typed
    check it
    if u check it all the values from the external source will be converted into character format irrespective of their data type

  • Decimal values are not flowing to Excise Invoice created in J1IIN

    Dear Sap Gurus,
    Please help me with the problem. After creation of invoice in VF01 when i am creaing outgoing excise invoice decimal values for BED, ECS and SEC. ECess( AT1) are not coming instead values are rounded of to nearest whole number.
    for ex.
    if invoice values are as below
    BED= 16
    ECS= 3.2
    HSC= 1.6
    when excise iinvoice is created values are changes as below
    BED= 16
    ECS= 3
    HSC= 2
    please give propeer solution
    reg.
    suresh

    Check in Logistics - General -> Tax on Goods Movements -> India -> Basic Settings -> Maintain Company Code Settings. 
    Also ensure that in V/06, for the respective excise condition types, rounding is not activated.
    thanks
    G. Lakshmipathi

  • Error saving purchase order data decimal values in SAP R/3

    sir,
    PO was created with currency japanese YEN using Tcode ME21N . The net price was showing 142502300 (in JPY).
    when checked in EKPO table , it saved with a value 1425023.00  instead of  142502300 . 
    what can be done to correct this.      
    In PO Print out , it showing values as 1425023.00  which is wrong.
    SPRO>> NET WEAVER >> GENERAL SETTINGS >> CURRENCY>> SET DECIMAL values FOR CURRENCY CODES is showing 0 decimals against JPY (Japanese YEN)
    I want to know where else the Decimal values could have been set to 2 decimal places.
    FOr other currencies like US Dollars  there is no error.
    Regards,
    Srinivasa Murthy

    Hello Srinivasa
    Please check the forum Rules of Engagement - https://wiki.sdn.sap.com/wiki/display/HOME/RulesofEngagement.
    Cross posting is not permitted. This issue is already raised in the application area forum which is probably correct. This does not look like a PI technical issue.
    Regards
    Mark Smyth
    XI/PI Moderator

  • How to load decimal values into a file using bcp in SQL Server 2000?

    Hi everyone,
    I'm trying to load data from a database table to a text file using bcp on SQL Server 2000. When I'm loading the decimal values, the values before the decimal are not being loaded into the file. How could I load the values before decimals?
    Here are the DDLs and DMLs of what I'm trying to run:
    CREATE TABLE [dbo].[Product_Sales](
    [Year_of_Sale] [smallint] NOT NULL,
    [Product_Type] [varchar](25) NOT NULL,
    [Product_Group] [varchar](25) NOT NULL,
    [Category_Type] [varchar](25) NOT NULL,
    [Category_Group] [varchar](10) NOT NULL,
    [Product_Count] [bigint] NOT NULL,
    [Product_Amount] [decimal](19, 2) NOT NULL,
    [Category_Count] [bigint] NOT NULL,
    [Category_Amount] [decimal](19, 2) NOT NULL,
    CONSTRAINT [PK_Product_Sales] PRIMARY KEY CLUSTERED
    [Year_of_Sale] ASC,
    [Product_Type] ASC,
    [Product_Group] ASC,
    [Category_Type] ASC,
    [Category_Group] ASC
    ) ON [PRIMARY]
    ) ON [PRIMARY]
    INSERT INTO [Yearly_Sales].[dbo].[Product_Sales]
    VALUES(2010, 'Online', 'Web', 'Cameras', 'Electronics', 547, 0.00, 0, 0.00)
    EXEC [master].[dbo].[xp_cmdshell] 'bcp "SELECT * FROM [Yearly_Sales].[dbo].[Product_Sales]" queryout D:\Yearly_Sales\Product_Sales.dat -c -T -S'
    And the output I see in the file is:
    2010 Online Web Cameras Electronics 547 .00 0 .00
    The values before decimals are being truncated.
    Thanks,
    Bangaaram
    Known is a DROP, Unknown is an OCEAN.

    You can modify the decimal column(s) in the table to varchar type before export. But it does not look good.
    alter table [dbo].[Product_Sales]
    Alter column [Product_Amount] varchar(20)
    alter table [dbo].[Product_Sales]
    Alter column [Category_Amount] varchar(20)
    Does that make any sense?
    Known is a DROP, Unknown is an OCEAN.
    Basically you modify the decimal column to a varchar type before you run the bcp command for export. You can modify your source table or you can modify them on the fly. It is just a workaround.
    Modifying the source wouldn't be a good idea. Never do that if you can't get your desired output.
    Known is a DROP, Unknown is an OCEAN.

Maybe you are looking for