当我尝试将8位二进制转换为Hexa十进制时 (例如: 00001010 输出 A )但我需要 0A 并且(例如: 10100000 输出为 A )但我需要输出 A0 。
如何用java编写代码?
答案 0 :(得分:0)
您可以使用String.format
作为下一个:
int value = 0b10100000;
System.out.println(String.format("%02x", value));
value = 0b00001010;
System.out.println(String.format("%02x", value));
<强>输出:强>
a0
0a
如果您想以大写字母使用%02X
代替%02x
,那么您将获得:
<强>输出:强>
A0
0A
响应更新:
您收到异常,因为此格式需要integer
,而您提供String
,因此在这种情况下需要使用integer
作为基数将其转换为2
如下:
for(i=0;i<4;i++){
for(j=0;j<4;j++){
System.out.println(String.format("%02x", Integer.parseInt(userKey[i][j], 2)));
}
}
<强>输出:强>
8a
a2
ca
9a
0a
a2
ca
9a
0a
a2
ca
9a
0a
a2
ca
9a
答案 1 :(得分:0)
<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="WebForm1.aspx.cs" Inherits="AjaxFileUpload_Test.WebForm1" %>
<%@ Register Assembly="AjaxControlToolkit" Namespace="AjaxControlToolkit" TagPrefix="ajaxToolkit" %>
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<title></title>
</head>
<body>
<form id="form1" runat="server">
<asp:ScriptManager ID="ScriptManager1" runat="server"></asp:ScriptManager>
<div>
<ajaxToolkit:AjaxFileUpload ID="AjaxFileUpload1" OnUploadCompleteAll="AjaxFileUpload1_UploadCompleteAll" OnUploadStart="AjaxFileUpload1_UploadStart" runat="server" />
</div>
</form>
</body>
</html>
答案 2 :(得分:0)
public class Demo
{
static int count=0;
static String res[]=new String[16];
public static void main(String[] args)
{
String str=JOptionPane.showInputDialog("enter text");
String abc="";
char[] messChar = str.toCharArray();
for (int i = 0; i < messChar.length; i++)
abc+= Integer.toBinaryString(messChar[i]);
System.out.println(abc.length());
int leg=(int)((abc.length()/128)+1);
String[] spl=new String[leg];
int j=0,i;
for( i=0;i<abc.length();i++)
{
if(count==128)
{
if(i==128)
spl[j]=abc.substring(0,128);
else
spl[j]=abc.substring(i-128,i);
count=0;
j++;
}
count++;
}
spl[j]=abc.substring(i-count,i);
for(int k=0;k<spl.length;k++)
System.out.println(spl[k].length());
for(i=0;i<spl.length;i++)
{
String binary=spl[i];
System.out.println(binary);
}
}
} 先生,如果我们输入任何文本,它将转换为二进制,然后分成128位。但是最后有一些位小于128位。如何填充这些位得到128位。