marxc88 Posted May 3, 2012 at 04:04 AM Report #452851 Posted May 3, 2012 at 04:04 AM boa noite .. Entao minha duvida e assim, eu estou fazendo um programa, que o mesmo gera um codigo em HEX... Eu ja fiz quase tudo so preciso de ajuda para 2 coisas importante... 1 - Entao e assim tenho o id do item. exemplo : 101150 ae eu passo para HEX e ele fica assim : 00018B1E mas eu preciso que ele fique assim :1E8B 0100 ( acho que se chama Little Endian).. Ae nao consigo fazer isso , ja tentei reverse , mas ae fica errado. 2 - Mais um problema, entao e assim, eu tenho o textbox que coloco o nome do item : Exemplo : Machado e passo para hex que fica : 4D61 6368 6164 6F mas eu preciso que ele fique em UNICODe : 4D00 6100 6300 6800 6100 6400 6F00 Por favor me ajudem neste problema...
apocsantos Posted May 3, 2012 at 08:49 AM Report #452862 Posted May 3, 2012 at 08:49 AM Bom dia, Mostra o código que tens feito. Duvido que alguém te coloque aqui a solução completa. Cordiais cumprimentos, Apocsantos "A paciência é uma das coisas que se aprendeu na era do 48k" O respeito é como a escrita de código, uma vez perdido, dificilmente se retoma o habito"
marxc88 Posted May 3, 2012 at 03:58 PM Author Report #452928 Posted May 3, 2012 at 03:58 PM entao e isto o que eu fiz, quando clika no butao, ele pega nos dados dos texbox e checkbox e gera um hexadecimal e coloka no textbox3.text private void button1_Click(object sender, EventArgs e) { int iditem2; iditem2 = Convert.ToInt32(textBox4.Text); string iditem = iditem2.ToString("X2"); string chartype = null; string classe = null; string tipoitem = null; string acessorio = null; string moeda = null; string loja = null; string idnome2 = textBox1.Text; string idnome = ""; foreach (char c in idnome2) idnome += ((UInt64)c).ToString("x") + " "; string iddesc2 = textBox2.Text; string iddesc = ""; foreach (char c in iddesc2) iddesc += ((UInt64)c).ToString("x") + " "; int ataque2; ataque2 = Convert.ToInt16(textBox7.Text); string ataque = ataque2.ToString("X2"); int level2; level2 = Convert.ToInt16(textBox10.Text); string level = level2.ToString("X2"); int preco2; preco2 = Convert.ToUInt16(textBox8.Text); string preco = preco2.ToString("X4"); int defesa2; defesa2 = Convert.ToInt16(textBox5.Text); string defesa = defesa2.ToString("X2"); int hp2; hp2 = Convert.ToInt16(textBox6.Text); string hp = hp2.ToString("X2"); if (checkBox1.Checked) { loja = "00"; } else { loja = "01"; } if (checkBox33.Checked) { moeda = "00"; } else if (checkBox35.Checked) { moeda = "00"; } else if (checkBox29.Checked) { moeda = "03"; } else if (checkBox34.Checked) { moeda = "01"; } if (checkBox6.Checked) { chartype = "01"; } else if (checkBox7.Checked) { chartype = "02"; } else if (checkBox8.Checked) { chartype = "04"; } else if (checkBox9.Checked) { chartype = "08"; } else if (checkBox10.Checked) { chartype = "10"; } else if (checkBox11.Checked) { chartype = "20"; } else if (checkBox12.Checked) { chartype = "3F"; } if (checkBox4.Checked) { classe = "00"; }else if(checkBox2.Checked) { classe = "01"; }else if(checkBox3.Checked) { classe = "02"; }else if(checkBox5.Checked) { classe = "03"; }else { classe = "00"; } if (checkBox13.Checked) { tipoitem = "02"; }else if(checkBox14.Checked) { tipoitem = "04"; }else if(checkBox15.Checked) { tipoitem = "08"; }else if(checkBox16.Checked) { tipoitem = "10"; }else if (checkBox17.Checked) { tipoitem = "20"; }else if(checkBox18.Checked) { tipoitem = "40"; }else if(checkBox19.Checked) { tipoitem = "00"; }else if(checkBox20.Checked) { tipoitem = "80"; } if (checkBox21.Checked) { acessorio = "01"; } else if (checkBox22.Checked) { acessorio = "08"; } else if (checkBox23.Checked) { acessorio = "20"; } else if (checkBox24.Checked) { acessorio = "10"; } else if (checkBox25.Checked) { acessorio = "40"; } else if (checkBox26.Checked) { acessorio = "04"; } else if (checkBox27.Checked) { acessorio = "80"; } else if (checkBox28.Checked) { acessorio = "02"; } else { acessorio = "00"; } textBox3.Text = "" + iditem + "" + idnome + "0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000" + iddesc + "00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000FFFFFFFF" + chartype + "000000" + classe + "000000" + level + "000000FFFFFFFF" + tipoitem + "" + acessorio + "000000000000" + ataque + "000000" + defesa + "000000" + hp + "00000FFFFFFFF0000803F0000803F0000803F000000000000803F000000000000803F000000000000803F000000000000803F0000803F000000000000000000004E004F00540049004E0047000000CCCC0600000007000000CCCCCCCCCCCCCCCCF0D8D111CCCCCCCC68CA13000FF7544898BC1300F043570002000000A4BC1300EF7E4A005EBF130043F05448E0C01300CCCCCC01D4BB1300D4BB1300CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCD4BB1300CCCCCCCCCCCCCCCC0000CCCCCCCCCCCCCCCCCCCCCCCCCCCC0000000007000000CCCCCCCCCCCCCCCCCCCCCCCC0000CCCCCCCCCCCCCCCCCCCCCCCCCCCC0000000007000000CCCCCCCCCCCCCCCCCCCCCCCC" + moeda + "000000" + preco + "00000000000000FFFFFFFF000000000000000000000000000000000000000000"+ loja +"0000000000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF000000000000000000000000000000000000000000000000000000000000FFFFFFFF"; } O que falta fazer e o iditem, que tenho que inverter como expliquei em cima, e o nome e descricao colokar 00 depois de cada caracter. edit : Primeiro problema resolvido : int iditem2; iditem2 = Convert.ToInt32(textBox4.Text); string iditem = iditem2.ToString("X8"); string iditemnum2; iditemnum2 = iditem.Substring(0, 2); //00 string iditemnum3; iditemnum3 = iditem.Substring(2, 2); //01 string iditemnum4; iditemnum4 = iditem.Substring(4, 2); //8B string iditemnum5; iditemnum5 = iditem.Substring(6, 2); //1E iditem = "" + iditemnum5 + "" + iditemnum4 + "" + iditemnum3 + "" + iditemnum2 + ""; Nao e o melhor metodo mas funciona 🙂
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now