محمد زارع
چهارشنبه 10 مرداد 1386, 00:40 صبح
با سلام و خسته نباشید
من برای یک قسمت از برنامم احتیاج به خوندن اطلاعاتی که توسط GPS در یک فایل متنی ثبت شده دارم، البته باید بگم این اطلاعات فقط با یک فرمت مشابه زیر که با 6 حرف "GPGGA$"شروع میشه به درد من میخوره و با بقیه خطوطی که با غیر از این آغاز بشه اصلاً کاری ندام.
نمونه داده ها:
GPGGA$,161229.487,3723.2475,N,12158.3416,W,1,7,1,9 ,M,10,12,16,0000*18
من برای این کار یک الگوریتم رو پیاده سازی کردم که شامل مراحل زیره:
1- بعد از گرفتن نام فایل از کاربر، تعداد خطوط اون رو محاسبه میکنه.
2- برای هر خط، موقعیت مکانی کاماها رو تعیین کرده و در یک آرایه از نوع Integer قرار میده.
3- با معلوم بودن محل کاماها، هر تعداد کاراکتری که بین دو کامای خاص قرار گرفته رو در محل مخصوص به خودش توی جدول قرار میده. مثلاً در نمونه بالا عددی که بین دو کامای سوم و چهارم قرار گرفته (N) رو در محل مخصوص به خودش قرار میده.
به نظرم اصل کاری که داره انجام میشه خیلی ساده است و تقریباً هم داره خوب جواب میده ولی اشکال اینه که سرعتش پایینه من کار رو با یک فایل که تعداد خطوطش حدود 900 خطه امتحان کردم، اصلاً سرعتش خوب نبود، نکته جالب اینکه تعداد خطوط فایل اصلی در حدود 30,000 خطه که با این حساب باید سیستم هنگ کنه.:-(
من نمونه سورس برنامه رو قرار میدم. یه فایل متنی هم به نام "GPS1.TXT" همراهش میگذارم. لطفاً برنامه رو اجرا کنید و سورس رو هم نگاه کنید و اگه راهd بنظرتون رسید حتماً کمک کنید.
خیلی متشکر و ممنونم.
زارع
Mohammad.Zarea@Gmail.com
من برای یک قسمت از برنامم احتیاج به خوندن اطلاعاتی که توسط GPS در یک فایل متنی ثبت شده دارم، البته باید بگم این اطلاعات فقط با یک فرمت مشابه زیر که با 6 حرف "GPGGA$"شروع میشه به درد من میخوره و با بقیه خطوطی که با غیر از این آغاز بشه اصلاً کاری ندام.
نمونه داده ها:
GPGGA$,161229.487,3723.2475,N,12158.3416,W,1,7,1,9 ,M,10,12,16,0000*18
من برای این کار یک الگوریتم رو پیاده سازی کردم که شامل مراحل زیره:
1- بعد از گرفتن نام فایل از کاربر، تعداد خطوط اون رو محاسبه میکنه.
2- برای هر خط، موقعیت مکانی کاماها رو تعیین کرده و در یک آرایه از نوع Integer قرار میده.
3- با معلوم بودن محل کاماها، هر تعداد کاراکتری که بین دو کامای خاص قرار گرفته رو در محل مخصوص به خودش توی جدول قرار میده. مثلاً در نمونه بالا عددی که بین دو کامای سوم و چهارم قرار گرفته (N) رو در محل مخصوص به خودش قرار میده.
به نظرم اصل کاری که داره انجام میشه خیلی ساده است و تقریباً هم داره خوب جواب میده ولی اشکال اینه که سرعتش پایینه من کار رو با یک فایل که تعداد خطوطش حدود 900 خطه امتحان کردم، اصلاً سرعتش خوب نبود، نکته جالب اینکه تعداد خطوط فایل اصلی در حدود 30,000 خطه که با این حساب باید سیستم هنگ کنه.:-(
من نمونه سورس برنامه رو قرار میدم. یه فایل متنی هم به نام "GPS1.TXT" همراهش میگذارم. لطفاً برنامه رو اجرا کنید و سورس رو هم نگاه کنید و اگه راهd بنظرتون رسید حتماً کمک کنید.
خیلی متشکر و ممنونم.
زارع
Mohammad.Zarea@Gmail.com