PDA

View Full Version : خواندن و نوشتن در فایلهای باینری که ساختار رکورد را نمی دانیم ؟



mahdi939
چهارشنبه 27 آبان 1388, 00:44 صبح
با سلام
من یک سری فایل باینری تحت داس دارم که ساختار فیلدهای هر رکورد را نمی دانم با چه روشی میشود این فایلها را رکورد به رکورد خواندن من فقط نام لاتین فیلدها رانمی دانم نوع و اندازه هر یک را می توانم بدست بیاورم به پیوست یک نمونه از این فایلها را میگذارم .
لطفا بررسی نمایید.
با تشکر

tdkhakpur
چهارشنبه 27 آبان 1388, 16:59 عصر
بايد با سعي و خطا اين كار را انجام بديد.
فكر كنم با اين كار cpu خسته بشود چه بماند به اينكه خودتان دست به كار بشويد.

mahdi939
دوشنبه 02 آذر 1388, 15:36 عصر
سلام
یعنی روشی برای خواندن رکوردهای یک فایل باینری بدون داشتن نام فیلدها و یا ساختار آن وجود ندارد دوستان لطفا این موضوع اهمیت زیادی برای من دارد لطفا بررسی نماید متشکرم .

vcldeveloper
دوشنبه 02 آذر 1388, 21:22 عصر
یعنی روشی برای خواندن رکوردهای یک فایل باینری بدون داشتن نام فیلدها و یا ساختار آن وجود ندارد دوستان لطفا این موضوع اهمیت زیادی برای من دارد لطفا بررسی نماید متشکرم .خواندن فایل موردی نیست، ولی تا زمانی که ندونید ساختار فایل به چه شکلی هست، داده هایی که از فایل خواندید مفهوم خاصی نخواهند داشت.

برای اینکه ساختار فایل را تشخیص بدید هم یک راه حل استاندارد وجود نداره، باید خودتان با بررسی داده های چند نمونه از آن فرمت فایلی (مثلا در یک Hex Editor)، سعی کنید ساختار آن را حدس بزنید، و به قول دوستان با سعی و خطا ساختار ذخیره داده در آن را کشف کنید.

این کار جزو مباحث مهندسی معکوس هست.

mahdi939
جمعه 06 آذر 1388, 11:19 صبح
خواندن فایل موردی نیست، ولی تا زمانی که ندونید ساختار فایل به چه شکلی هست، داده هایی که از فایل خواندید مفهوم خاصی نخواهند داشت.

برای اینکه ساختار فایل را تشخیص بدید هم یک راه حل استاندارد وجود نداره، باید خودتان با بررسی داده های چند نمونه از آن فرمت فایلی (مثلا در یک Hex Editor)، سعی کنید ساختار آن را حدس بزنید، و به قول دوستان با سعی و خطا ساختار ذخیره داده در آن را کشف کنید.

این کار جزو مباحث مهندسی معکوس هست.

جناب آقای کشاورز من ساختار و نام فارسی فیلد ها را دارم ولی نام لاتین فیلدهای ساختار را ندارم روش ساده تری برای بدست آوردن نام لاتین فیلدهای ساختار وجود دارد بطور مثال در تعریف ساختار برای خواندن اطلاعات به نام لاتین ساختار احتیاج نباشد صرفا با اندازه و نوع فیلد بتوان به محتویات فیلد دسترسی داشت.
متشکرم

mahdi939
سه شنبه 10 آذر 1388, 17:54 عصر
سلام
آقای کشاورز و یا دیگر دوستان لطفا نظر خودتان را درباره آخرین نظر این تاپیک بدهید با سپاس

DataMaster
سه شنبه 10 آذر 1388, 18:28 عصر
تا جایی که من فهمیدم طبق عرض خودتون این یک فایل باینریه
اگه ساختار رو دارین دیگه مشکل نیست شما که نوع و طول هر فیلد رو دارین حالا یه اسم برای فیلدها بذارین چه اهمیتی داره که اسمش چیه

mehdi.mousavi
سه شنبه 10 آذر 1388, 18:53 عصر
جناب آقای کشاورز من ساختار و نام فارسی فیلد ها را دارم ولی نام لاتین فیلدهای ساختار را ندارم روش ساده تری برای بدست آوردن نام لاتین فیلدهای ساختار وجود دارد بطور مثال در تعریف ساختار برای خواندن اطلاعات به نام لاتین ساختار احتیاج نباشد صرفا با اندازه و نوع فیلد بتوان به محتویات فیلد دسترسی داشت. متشکرم

منظورتون اینه که نمیدونید اسم فیلدی که برنامه نویس موقع ساخت این فایل در برنامه اش تعیین کرده چی بوده، اما میدونید اون فیلد برای چه کاری هستش، اندازه اش چقدره و از کجا شروع میشه؟؟؟ (اگر منظورتون این بوده، از کامپایلر دوری کنید تا کسی صدمه نبینه)!

mahdi939
جمعه 13 آذر 1388, 12:16 عصر
من قبل از اینکه این تاپیک را ایجاد کنم همین روشی که شما فرمودید را انجام دادم ولی مقداری که برای هر فیلد بر می گردونه مقدار درستی نیست به نظر شما علت چیه

mehdi.mousavi
جمعه 13 آذر 1388, 13:09 عصر
من قبل از اینکه این تاپیک را ایجاد کنم همین روشی که شما فرمودید را انجام دادم ولی مقداری که برای هر فیلد بر می گردونه مقدار درستی نیست به نظر شما علت چیه

علتش اینه کا یا ساختار فایل رو درست نمیدونید، یا کدی که نوشتید ایراد داره و منطبق با ساختار فایل داده ها رو استخراج نمیکنه.

shask00l
جمعه 13 آذر 1388, 16:41 عصر
اگه ممکنه اسم فارسی فیلدها و اندازشونو اینجا قرار بدید تا اگه کسی خواست تست کنه بتونه با توجه به اطلاعات شما این کارو انجام بده .

baradar
یک شنبه 29 آذر 1388, 20:54 عصر
شما باید کد یا الگوریتم ذخیره سازی رو داشته باشید در غیر اینصورت مثل این میمونه که توی یک شهر بدون آدرس دنباله یک خونه بگردید