Hej, Såhär skulle jag gjort: Ok, jag hade gjort precis så, fast inte använt mig av padleft. Så här kanske: <b>varför krongla till det ? tänkte inte på det , ska givetvis vara så härGöra om ett dec tal till hex
Jag ska göra om ett dec tal till hex. Det ska kunna gå att göra genom "ellra" in och shifta ett steg, men HUR?! Jag har en sträng med dec tal som ska göras om till en sträng med hex tal:
string tip = "212.215.229.137";
string[] thex = tip.Split('.');
uint tipNumber = uint.Parse(thex[0]);
tipNumber = ((tipNumber | uint.Parse(thex[1]) << 8)& 0x00FF);
tipNumber = ((tipNumber | uint.Parse(thex[2]) << 8)& 0x00FF);
tipNumber = ((tipNumber | uint.Parse(thex[3]) << 8)& 0x00FF);
Nu ska tipNumber bli: D4D7E589 (och därefter göras om till sträng). Kan man få ut ett hex tal på detta sätt? Och hur gör man bitoperationerna? Dvs vilket håll ska man shifta till och hur många bitar?Sv: Göra om ett dec tal till hex
string tip = "212.215.229.137";
string[] thex = tip.Split('.');
string Resultat = int.Parse(thex[0]).ToString("X").PadLeft(2,'0');
Resultat += int.Parse(thex[1]).ToString("X").PadLeft(2,'0');
Resultat += int.Parse(thex[2]).ToString("X").PadLeft(2,'0');
Resultat += int.Parse(thex[3]).ToString("X").PadLeft(2,'0');
/JohanSv: Göra om ett dec tal till hex
Om det är någon som vet hur man gör det med hjälp av bitoperationer, får ni gärna visa hur, det är bra att kunna. Men det fungerar bra med padleft!
Tack för ett snabbt svar!!Sv:Göra om ett dec tal till hex
string tip = "212.215.229.137";
string[] thex = tip.Split('.');
uint tipNumber;
tipNumber = uint.Parse(thex[0]) << 24;
tipNumber |= uint.Parse(thex[1]) << 16;
tipNumber |= uint.Parse(thex[2]) << 8;
tipNumber |= uint.Parse(thex[3]);
Console.WriteLine("{0:X}", tipNumber);
Sv: Göra om ett dec tal till hex
varför krongla till det ?
string hexValue = string.Fomat("{0:X}{1:X}{2:X}{3:X}",tHex[0],tHex[1],tHex[2],tHex[3]);Sv:Göra om ett dec tal till hex
string hexValue = string.Fomat("{0:X}{1:X}{2:X}{3:X}",tHex[0],tHex[1],tHex[2],tHex[3]); </b>
Fungerar verkligen det där om något av talen är lägre än 16?
/JohanSv: Göra om ett dec tal till hex
string hexValue = string.Format("{0:X2}{1:X2}{2:X2}{3:X2}",tHex[0],tHex[1],tHex[2],tHex[3]);