ايران ويج

نسخه‌ی کامل: تعريف string با طول ثابت ؟
شما در حال مشاهده‌ی نسخه‌ی متنی این صفحه می‌باشید. مشاهده‌ی نسخه‌ی کامل با قالب بندی مناسب.
صفحه‌ها: 1 2
چطوري ميشه يك مقدار string با اندازه ثابت تعريف
مثل كد زير در vb6
dim a as string *10
نمي خوام از روش convert استفاده كنم چون يك dll اضافه مي كنه
روش ديگري هست
یه روشش اینه:l
<VBFixedString(15)> Public Title As String
یه روشش هم اینه:
Dim Title(15) As Char
که میتونید مثل یه رشته باهاش رفتار کنید.
یه روشش هم اینه که اصلا ثابت تعریف نکنید. ثابت میخوای چیکار؟
ajlajlajl نوشته است:یه روشش هم اینه که اصلا ثابت تعریف نکنید. ثابت میخوای چیکار؟
روش اول خيلي عالي بود.
مجبورم استفاده كنم ، چون مي خوام با structure كار كنم بايد سايز فيلد متن ثابت باشه.
میخوای با توابع API کار کنی؟
میشه روش دوم رو هم تست کنی ببینی کار میکنه یا نه؟
ajlajlajl نوشته است:میخوای با توابع API کار کنی؟
میشه روش دوم رو هم تست کنی ببینی کار میکنه یا نه؟
با API كار ندارم ، با فايلهاي random به همين دليل مقدار string حتما بايد ثابت باشه
همون طور كه گفتم روش اولت خيلي عالي بود
اما روش دوم (كار ميكنه) اما دردسر داره ، چون بايد بيام يك مقدار string رو بشكنم و تك تك كاراكترها رو توي اين آرايه بريزم
بازم ممنونBiggrin
نه. گفتم که میتونی مثل رشته باهاش رفتار کنی یعنی مستقیم یه رشته رو بهش نسبت بدی: dim a(50) as char="ajlajlajl" i
در ضمن یه تابع هم هست به اسم readallbytes که همه بایتای یه فایلو میخونه میریزه توی یه آرایه.
نقل قول: یه تابع هم هست به اسم readallbytes که همه بایتای یه فایلو میخونه میریزه توی یه آرایه.
میشه تابعشو توضیح بدی
توی دات نته ؟
توی system.io.file هسته. آدرس فایل رو میگیره و یه آرایه از نوع char بر میگردونه. یه تابع هم هست به اسم writeallbytes که برعکس اونه.
ajlajlajl نوشته است:توی system.io.file هسته. آدرس تابع رو میگیره و یه آرایه از نوع char بر میگردونه. یه تابع هم هست به اسم writeallbytes که برعکس اونه.

دستت درد نکنه فقط منظورت از "آدرس تابع" همون آدرس فایله دیگه درسته...
یک چیز دیگه: این تابع اگه بخایم باهاش یک فایل حجیم رو بخونیم که حجم
فایل از رم بیشتر باشه اونوقت اتفاق خوبی نمیفته. نمیشه بهش بفهمونیم که مثلا نصف فایل رو بخونه؟
آخه من هنوز تستش نکردم
مرسی
ببخشید دو تا اشتباه چاپی داشت. نوع آرایه ای که برمیگردونه هم byte هسته.
رو سیستم من یه فایل 100 مگی رو توی یکی دو ثانیه باز میکنه ولی بزرگ تر از اونو میره تو فضا. خب میتونید کمکمک بخونید. یه فایل 800 مگ دادم بهش الان یه ربعه هنوز نتونستم ببندمش. نتیجه گیری اخلاقی : بهتره فایلای کوچیکو باش باز کنید وگرنه مثل این هنگ میکنه نه میشه ببندیش نه هیچه دیگه.

تا 800 مگ رو نگرفت ول نکرد. حالا بسته شد.
من به اين نتيجه رسيدم كه روش دوم يعني استفاده از آرايه كاراكترهات خيلي بهتره
اولا چون روش اول نميدونم چرا تو سيستم من هر وقتي حال كرد كار ميكنه
دوما كه روش كار با آرايه اي از كاراكترها (مثل C و pascal) هستش و معتبر تر جلوه ميكنه
خلاصه كه باحال تره
در مورد تابع readallbyte اگر ميشه يك نمونه كد بده ، من فايل رو تو متغير byte (البته آرايه)باز كردم
خوب حالا چطوري باهاش كاركنم ؟ بايد تمام كاراكترهارو به char تبديل كنم؟ راه ديگه اي هم هست ؟
صفحه‌ها: 1 2