PDA

View Full Version : سوال: خواندن فایلهای bdc babylon



Mrs.Net
چهارشنبه 04 فروردین 1389, 19:00 عصر
میخوام از فایلهای دیکشنری babylon که فرمت bdc دارند تو برنامه ام استفاده کنم
یکی میگفت با zlib فشرده شده
چطور میتونم این فایل بخونم یا decompress کنم

Mrs.Net
سه شنبه 10 فروردین 1389, 15:58 عصر
بنظرم راحت تر از اینها باشه
یه کمک یا اشاره مفید

ilius.gnu
جمعه 28 خرداد 1389, 18:42 عصر
بنظرم راحت تر از اینها باشه
یه کمک یا اشاره مفید
من مدت‌ها روی فرمت bgl کار کردم و از کدهای موجود (که با مهندسی معکوس بدست اومده بود) استفاده کردم و خودم هم کلی مهندسی معکوس انجام دادم تا در نهایت تونستم سه کانورتور درست کنم یه پشتیبانی نسبتا کاملی از bgl داشته باشه (البته فقط برای خوندن از bgl) اسم این ابزار PyGlossary هست
http://sourceforge.net/projects/pyglossary/files/
برای لینوکس نوشته شده ولی توی احتمالا ویندوز و مک هم میشه اجراش کرد (با پایتون نوشته شده و غیر از رابط گرافیکی PyGTK رابط Tkinter و خط فرمان هم داره) البته باید قبلش مفسر پایتون (۲٫۵ یا ۲٫۶) نصب بشه.

حالا باید بگم که فرمت bgl فرمت خیلی خیلی پیچیده و مزخرفی بود!! انگار عمداً طوری پیچوندن که نشه به محتواش پی برد. و هنوز هم بعد از حدود دو سال کار روی bgl ، نمی‌تونم ادعا کنم ابزاری که درست کردم پشتیبانی ۱۰۰ درصد کاملی از bgl داره!!

اما در مورد bdc . چیزی که مشخصه اینکه bdc بر خلاف bgl از فشرده‌سازی استفاده نمی‌کنه. یعنی دیتاهای داخل bgl با فرمت gzip فشرده شده، اما bdc با توجه به حجم فایل مشخصه که برای سرعت بیشتر، فشرده سازی نداره و از اونجایی که این فایل‌ها فایل‌های موقت babylon هست (bgl بعد از نصب به bdc تبدیل میشه و توی پوشه نصب/تنظیمات babylon قرار می‌گیره) منطقی هم به نظر می‌رسه.
و میشه حدس زد که ساختار bdc شباهت‌هایی به ساختار bgl داشته باشه (غیر از فشرده‌سازی) ولی تلاش‌های من تا به حال نتونسته شباهتی رو پیدا کنه! و هنوز موفق نشدم ساختارش رو کشف کنم.
اگه کسی روی مهندسی معکوس کار کرده، و علاقمند هست روی bdc کار کنه، می‌تونیم همفکری کنیم مثلاً من می‌ٰتونم ساختار bgl رو براش توصیف کنم شاید به کارش کمک کنه.