چطوری میتونم هدر فایل رو به دست بیارم

سلام دوتا سوال داشتم . (ویژوال بیسیک)

1.چطوری میتونم هدر یک فایل رو از بقیه اطلاعاتش جدا کنم و اطلاعات رو جدا داخل یک فایل و هدر رو هم داخل فایلی دیگر ذخیره کنم

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

the_king

مدیرکل انجمن
سلام دوتا سوال داشتم . (ویژوال بیسیک)

1.چطوری میتونم هدر یک فایل رو از بقیه اطلاعاتش جدا کنم و اطلاعات رو جدا داخل یک فایل و هدر رو هم داخل فایلی دیگر ذخیره کنم

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

هدر این فایل ها ساختار مشخصی داره؟

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

شما برای ترکیب کردن مجدد دو فایل هم می توانید عکس اینکار را انجام دهید، یعنی آن دو فایل را برای خواندن
باز کنید و همچنین یک فایل جدید را برای نوشتن باز کنید.
از ابتدای فایل اول تا انتهای آن بخوانید و در فایل جدید بنویسید. سپس از ابتدای فایل دوم تا انتهای آن بخوانید
و در فایل جدید بنویسید. بعد از بستن سه فایل، هدر و داده در آن فایل جدید ادغام شده اند.
 
خوب مشکل من هم همینجاست که شما میگید از اول فایل تا انتهای هدر رو به دست بیاریم خوب مشکل من هم همینه که از کجای فایل تا کجای فایل هدر هست و ابتدا و انتهای هدر رو چطوری میشه به دست آورد؟ خیلی ممنونم برای جواب دادن سوالم
 

the_king

مدیرکل انجمن
خوب مشکل من هم همینجاست که شما میگید از اول فایل تا انتهای هدر رو به دست بیاریم خوب مشکل من هم همینه که از کجای فایل تا کجای فایل هدر هست و ابتدا و انتهای هدر رو چطوری میشه به دست آورد؟ خیلی ممنونم برای جواب دادن سوالم

برای همین پرسیدم که هدر این فایل ها ساختار مشخصی داره؟ هر فرمت فایلی هدر مخصوص به خودش رو داره،
بگذریم که بعضی از فرمت ها اصلا بخشی به عنوان هدر ندارند. شما اول باید ساختار اون فرمت فایل مورد نظرتان
را بررسی کنید و بر اساس اون ساختار طول هدر و موقعیت انتهای آن رو مشخص کنید.

به عنوان مثال در فرمت فایل BMP یا Windows Bitmap چهارده بایت اول مربوط به هدر اولیه است و در موقعیت پانزدهمین
بایت طول هدر تکمیلی بر حسب بایت بصورت یک عدد 32 بیتی ذخیره شده که مقدار معمول اش 40 بایته. پس میشه
گفت اگه قرار باشه که هدر یک فایل BMP رو شناسایی کنید، یک عدد 32 بیتی را از موقعیت 15 می خوانید و مقدارش
رو با 14 (طول هدر اولیه) جمع می کنید تا اندازه کامل هدر مشخص بشه.

یک مثال دیگه می زنم، در فرمت فایل MP3 برای خواندن تگ ID3 نسخه 1 در ابتدای فایل اگر عبارت چهار کاراکتری
+TAG را دیدید با یک ساختار Extended روبرو شده اید و بایستی 227 بایت به جلو حرکت کنید وگرنه همانجا باقی بمانید.
حالا چه با ساختار Extended روبرو شده اید و چه نشده اید، اکنون اگر با عبارت سه کاراکتری TAG روبرو شدید،
یک هدر 128 بایتی شامل مشخصات صوتی (عنوان، آرتیست، آلبوم و ...) را یافته اید.

شناسایی هدر کاملا وابسته با ساختار فرمت فایل است. اگر می خواهید در مورد ساختار داخلی فایلها اطلاعاتی
کسب کنید بهترین منبعی که می شناسم سایت Wotsit.org است :

The Programmer's File and Data Resource
 

جدیدترین ارسال ها

بالا