PDA

View Full Version : قرار دادن صفر قبل از عدد جهت فیکس کردن طول



سینا2010
شنبه 21 خرداد 1390, 13:38 عصر
با سلام خدمت دوستان عزیز
من تو دیتا گرید یک ستون دارم به عنوان عدد حقوق که طول آن باید 12 کارکتر باشد.حالا مسئله این هست که همیشه این مبلغ 12 رقم نیست که بیشتر اوقات هفت رقم یا تعداد دیگر می باشد . من می خوام اگر این تعداد کمتر ازا 12 رقم بود قبلش صفر قرار بگیره تا به 12 کاراکتر برسه.
مثلا اگر تو دیتاگرید داره 6500000 نمایش می ده می خوام به این صورت نمایش داده بشه 000006500000.

دوستان کسی می تونه راهنمایی کنه؟ ممنون می شم.

saeid.memfis
شنبه 21 خرداد 1390, 14:22 عصر
حقوقت رو باید تبدیل به رشته کنی بعد هر جند تا 0 می خوای بهش الحاق کنی بعد به همون صورت رشته نشونش بدی و برای عملیات دوباره با ارزش اون کار کنی.
(متغیر حقوق)dim x as string=cstr

سینا2010
شنبه 21 خرداد 1390, 14:27 عصر
دوست عزیز من درست متوجه نشدم می شه بیشتر توضیح بدی.

محمد باقری نسب
شنبه 21 خرداد 1390, 14:44 عصر
حقوقت رو باید تبدیل به رشته کنی بعد هر جند تا 0 می خوای بهش الحاق کنی بعد به همون صورت رشته نشونش بدی و برای عملیات دوباره با ارزش اون کار کنی.
(متغیر حقوق)dim x as string=cstr

جناب saeid.memfis منظور دوستمون این بود که این صفرها به صورت پویا کم و زیاد (fixed length) بشه و نه دستی!

دوست عزیز جناب سینا2010 کد زیر رو استفاده کنید:

String.Format("{0:000000000000}", 6500000);

خروجی این کد در هر حال 12 کاراکتر خواهد بود که شما به جای عدد 6500000 میتونید متغیر عددیتون رو بگذارید و در خروجی هم یک رشته fixed length با دوازده کاراکتر دریافت کنید.

سینا2010
شنبه 21 خرداد 1390, 18:38 عصر
دوست عزیز من این دستور رو میخوام تو دیتا گرید بکار ببرم

ولی عمل نمی کنه
این دستور به نظر شما درسته یا من اشتباه نوشتم

Try
For i As Integer = 0 To dg3.Rows.Count
Dim str As String = dg3.Item(3, i).Value
dg3.Item(3, i).Value = Format("{0:000000000000}", str)
Next
Catch ex As Exception

End Try

محمد باقری نسب
یک شنبه 22 خرداد 1390, 08:08 صبح
شما باید رشته str رو به صورت عدد به تابع فرمت بدید نه به این صورت!

برای تبدیلش به عدد میتونید از int.Parse استفاده کنید.