2013-05-22 86 views
0

我試圖扭轉我的二進制字符串。任何解決方案?如何在Android上創建位反轉(從MSB-> LSB到LSB-> MSB)?

private OnClickListener btnConvListener = new OnClickListener() { 

    public void onClick(View v) { 

     try{ 

     String ag=edittext1.getText().toString(); 

     HexToBinary(ag); 

     } catch (Exception e) { 

      Toast.makeText(getBaseContext(), "Not insert data!",Toast.LENGTH_SHORT).show(); 

      } 
    } 

}; 

    void HexToBinary(String Hex) { 

    int i = Integer.parseInt(Hex, 16); 
    String Bin = Integer.toBinaryString(i);//Converts int to binary 
    text1.setText(Bin); 

     //Bit reversal method.... 

     int reversedNum = Integer.reverse(i); 

     text2.setText(reversedNum); 

     } 

這個函數的字符串十六進制轉換爲二進制字符串...但我希望有一個額外的輸出相反 LSB-> MSB ... 我測試了,但我沒有輸出....我有例外從try/catch ...錯誤沒有輸入數據...爲什麼?只顯示原始的二進制...不是相反...

回答

0

您可以使用

Integer.reverse(int i); 

你轉換爲字符串之前。看到api文檔http://developer.android.com/reference/java/lang/Integer.html#reverse%28int%29

+0

我更新我的代碼....我測試它,但我沒有輸出....我有try/catch異常...錯誤沒有輸入數據...爲什麼? – user2342687

+0

我想你需要做'text2.setText(Integer.toBinaryString(reversedNum));'而不是'text2.setText(reversedNum);'假設text2就像是一個文本字段。 – HexAndBugs

+0

當獲得資源編號0x08000000 – user2342687