PDA

View Full Version : سوال: نحوه ذخیره اعداد هگر در دیتابیس



mortezasar
شنبه 25 آبان 1392, 19:40 عصر
سلام دوستان من از روی پورت سریال یک عدد هگز دریافت میکنم و میخوام اونو توی دیتا بیس اس کیوال ذخیره کنم میشه یک راهنمایی در مورد ذخیره انجام بدید (فیلد رو از چه نوع در نظر بگیرم )
112879

mehdy.programmer
شنبه 25 آبان 1392, 19:56 عصر
دوست عزیز نمی دونم اگه دیتاتایپ خاصی برای هگز باشه یا نه ولی به نظر من اگه میخوای روی داده هات عملیات ریاضی انجام بدی، اونوارو تبدیل کن به دسیمال بعد ذخیره کن، اگر هم هگز رو نیاز دارید می تونید به صورت رشته اونو ذخیره کنید، ولی من شخصا تبدیلش به دسیمال رو توصیه می کنم چون هم فضای کمتری می گیره هم اینکه منطقی تره :چشمک:

mortezasar
شنبه 25 آبان 1392, 20:12 عصر
فقط یک عملیات مقایسه دارم میشه درباره نحوه تبدیل توضیح بدید که چه جور تبدیل کنم با تشکر

mehdy.programmer
شنبه 25 آبان 1392, 20:18 عصر
خوب شما میتونی از این کد استفاده کنی
int num = Int32.Parse(hexString, System.Globalization.NumberStyles.HexNumber);
یه رشته تو hexString میزاری و تو num عدد صحیح رو تحویل میگیری :لبخندساده:

mortezasar
شنبه 25 آبان 1392, 20:25 عصر
یه سوال فقط بعد میشه این دو عدد رو بجای عدد هگز با هم مقایسه کرد

mortezasar
شنبه 25 آبان 1392, 21:20 عصر
سلام دوست عزیز کد خطا میده من به صورت زیر نوشتم

string hexString = textBox1.Text;
int num = Int32.Parse(hexString,System.Globalization.NumberS tyles.HexNumber);
textBox2.Text = num.ToString();

mehdy.programmer
شنبه 25 آبان 1392, 22:18 عصر
کد مشکلی نداره! چه خطایی میده؟
برای مقایسه هم شما اول دو تا هگزتون رو تبدیل کنید به دسیمال بعد مقایسه کنی

mehdy.programmer
شنبه 25 آبان 1392, 22:31 عصر
دوست عزیز فهمیدم مشکلتون چیه! شما هگز هاتون به صورت 0xE5 هستش که باید 0x رو از اولش حذف کنید ! برای اینکار هم کدتون به شکل زیر تغییر بدید
int num = Int32.Parse(hexString.Substring(2), System.Globalization.NumberStyles.HexNumber);