فایل ONE چیست؟
فایلی که با پسوند .ONE نشان داده می شود توسط برنامه Microsoft OneNote ایجاد می شود. OneNote به شما امکان می دهد اطلاعات را با استفاده از برنامه جمع آوری کنید، گویی که از صفحه پیش نویس خود برای یادداشت برداری استفاده می کنید. فایلهای OneNote میتوانند حاوی عناصر مختلفی باشند که میتوانند در مکانهای غیر ثابت در صفحات سند قرار گیرند. این عناصر ممکن است حاوی متن، دستخط دیجیتالی، و اشیاء کپی شده از برنامه های کاربردی دیگر از جمله تصاویر، نقاشی ها و کلیپ های چندرسانه ای (صوتی/تصویری) باشند. مایکروسافت اکنون نسخه آنلاین OneNote را به عنوان بخشی از Office365 ارائه می دهد که در آن Notes را می توان با سایر کاربران OneNote از طریق اینترنت به اشتراک گذاشت.
مشخصات فرمت فایل ONE
فرمت فایل OneNote راه موثری برای نمایش یادداشت های دیجیتال به عنوان مجموعه های سلسله مراتبی از بخش ها و صفحات فراهم می کند. هر صفحه حاوی محتوای تعریف شده توسط کاربر در یک ساختار خاص برای نمایش با فرمت فایل Document Object Model (DOM) است. مدل داده ای برای این فرمت به شرح زیر است.
مروری بر ساختار
همانطور که در مدل داده برای فرمت فایل OneNote نشان داده شده است، یک سند OneNote از عناصر مختلفی تشکیل شده است.
بخش
یک بخش بالاترین محفظه در یک فایل OneNote است که حاوی عناصر مختلفی در آن است مانند:
صفحات
فراداده
خواص
فراداده ها و ویژگی ها شامل نام بخش، شناسایی صفحات موجود در بخش و ترتیب ظاهر شدن آن صفحات است. اصطلاح بخش به تمام صفحاتی که در یک بخش هستند و نمایش آن دادهها در یک فایل ذخیرهسازی نسخه OneNote® که دارای پسوند نام فایل .one است، اشاره دارد.
صفحه
محتوای تعریف شده توسط کاربر در یک سند OneNote در داخل یک صفحه قرار دارد. اطلاعات صفحه شامل متن، فهرست ها، جداول، عنوان صفحات، تصاویر و تگ های یادداشت می باشد. یک صفحه شامل اشیاء طرح کلی است که بیشتر اشیاء موجود به آنها اضافه می شود. به هر صفحه می توان یک نام برای نمایش معنی دار اختصاص داد و اشیاء را می توان مستقیماً به صفحات نیز اضافه کرد. یک صفحه می تواند حاوی صفحات فرعی در یک سیستم سلسله مراتبی باشد.
ویژگی ها و مجموعه های خواص
محتویات OneNote از ویژگی ها، مجموعه ویژگی ها و اشیاء داده فایل تشکیل شده است. مجموعه ویژگی مجموعه ای از ویژگی ها است که نشان دهنده نوعی محتوا است. یک شی داده فایل بلوکی از داده های باینری است که حاوی تصاویر، فایل های جاسازی شده یا محتوای صوتی/تصویری است.
نوت بوک OneNote
نوت بوک مجموعه ای از فایل های بخش است که در یک دایرکتوری ذخیره می شوند. مجموعه ای از ویژگی ها برای تعیین تنظیماتی مانند ترتیب بخش ها در نوت بوک و رنگ نوت بوک استفاده می شود.
ساختار فایل
یک فایل ذخیره تجدید نظر باید با ساختار Header شروع شود. باقیمانده فایل به بلوک های بایت تقسیم می شود، جایی که اندازه و ساختار هر بلوک توسط فیلدی که به آن ارجاع می دهد مشخص می شود. یک بلوک در صورتی قابل دسترسی است که با ساختار Header به آن ارجاع داده شود، یا اگر توسط یک فیلد در بلوک قابل دسترس دیگری ارجاع داده شود. داده های خارج از ساختار Header و هر بلوک قابل دسترسی باید نادیده گرفته شوند.
همه ساختارها بر روی مرزهای 1 بایتی تراز شده اند. همه اعداد صحیح امضا می شوند مگر اینکه طور دیگری مشخص شده باشد. همه فیلدها little-endian هستند مگر اینکه طور دیگری مشخص شده باشد.
سرتیتر
سربرگ فایل ONE شامل تکههایی است که شامل شناسهها و فیلدهای منحصربهفرد مختلف برای نمایش اطلاعات فایل به شرح زیر است:
guidFileType (16 بایت):
GUID که نوع فایل ذخیره بازبینی را مشخص می کند. باید یکی از مقادیر جدول زیر باشد.
فرمت فایل | مقدار |
---|---|
.one | {7B5C52E4-D88C-4DA7-AEB1-5378D02996D3} |
.onetoc2 | {43FF2FA1-EFD9-4C76-9EE2-10EA5722765F} |
guidFile (16 بایت):
یک GUID که هویت این فایل ذخیره سازی نسخه را مشخص می کند. باید در سطح جهانی منحصر به فرد باشد.
guidLegacyFileVersion (16 بایت):
باید {00000000-0000-0000-0000-000000000000} باشد و MUST نادیده گرفته شود.
guidFileFormat (16 بایت):
GUID که مشخص می کند که فایل یک فایل ذخیره تجدید نظر است. باید {109ADD3F-911B-49F5-A5D0-1791EDC8AED8} باشد.
ffvLastCodeThatWroteToThisFile (4 بایت):
یک عدد صحیح بدون علامت. بسته به نوع فایل، باید یکی از مقادیر جدول زیر باشد.
فرمت فایل | مقدار |
---|---|
.one | 0x0000002A |
.onetoc2 | 0x0000001B |
ffvOldestCodeThatHasWrittenToThisFile (4 بایت):
یک عدد صحیح بدون علامت. بسته به فرمت فایل این فایل، باید یکی از مقادیر جدول زیر باشد.
فرمت فایل | مقدار |
---|---|
.one | 0x0000002A |
.onetoc2 | 0x0000001B |
ffvNewestCodeThatHasWrittenToThisFile (4 بایت):
یک عدد صحیح بدون علامت. بسته به فرمت فایل این فایل، باید یکی از مقادیر جدول زیر باشد.
فرمت فایل | مقدار |
---|---|
.one | 0x0000002A |
.onetoc2 | 0x0000001B |
ffvOldestCodeThatMayReadThisFile (4 بایت):
یک عدد صحیح بدون علامت. بسته به فرمت فایل این فایل، باید یکی از مقادیر جدول زیر باشد.
فرمت فایل | مقدار |
---|---|
.one | 0x0000002A |
.onetoc2 | 0x0000001B |
fcrLegacyFreeChunkList (8 بایت):
ساختار FileChunkReference32 که باید مقدار fcrZero داشته باشد.
fcrLegacyTransactionLog (8 بایت):
ساختار FileChunkReference32 که باید fcrNil باشد.
cTransactionsInLog (4 بایت):
یک عدد صحیح بدون علامت که تعداد تراکنش ها را در گزارش تراکنش مشخص می کند. نباید صفر باشد.
cbLegacyExpectedFileLength (4 بایت):
یک عدد صحیح بدون علامت که باید صفر باشد و باید نادیده گرفته شود.
rgbPlaceholder (8 بایت):
یک عدد صحیح بدون علامت که باید صفر باشد و باید نادیده گرفته شود.
fcrLegacyFileNodeListRoot (8 بایت):
ساختار FileChunkReference32 که باید fcrNil باشد.
cbLegacyFreeSpaceInFreeChunkList (4 بایت):
یک عدد صحیح بدون علامت که باید صفر باشد و باید نادیده گرفته شود.
fNeedsDefrag (1 بایت):
باید نادیده گرفته شود.
fRepairedFile (1 بایت):
باید نادیده گرفته شود.
fNeedsGarbageCollect (1 بایت):
باید نادیده گرفته شود.
fHasNoEmbeddedFileObjects (1 بایت):
یک عدد صحیح بدون علامت که باید صفر باشد و باید نادیده گرفته شود.
guidAncestor (16 بایت):
GUID که فیلد Header.guidFile از فایل فهرست مطالب را مشخص می کند که توسط جدول زیر ارائه شده است:
فرمت فایل فهرست مطالب | مکان فایل فهرست مطالب |
---|---|
Section File - .One | فایل فهرست مطالب در همان دایرکتوری این فایل قرار دارد. |
پرونده فهرست مطالب - .onetoc2 | فایل فهرست مطالب در فهرست اصلی این فایل قرار دارد. |
اگر GUID {00000000-0000-0000-0000-000000000000} باشد، این فیلد به فایل فهرست مطالب اشاره نمی کند.
crcName (4 بایت):
یک عدد صحیح بدون علامت که مقدار CRC نام این فایل ذخیرهسازی نسخه را مشخص میکند. این نام نمایش یونیکد نام فایل با پسوند آن و یک کاراکتر تهی اضافی در پایان است. این CRC همیشه با استفاده از الگوریتم CRC برای فایل .one محاسبه میشود، صرف نظر از این فرمت فایل ذخیرهسازی تجدیدنظر.
fcrHashedChunkList (12 بایت):
یک ساختار FileChunkReference64x32 که ارجاع به اولین FileNodeListFragment را در لیست تکه های هش شده مشخص می کند. اگر مقدار ساختار FileChunkReference64x32 fcrZero یا fcrNil باشد، لیست تکه های هش شده وجود ندارد.
fcrTransactionLog (12 بایت):
ساختار FileChunkReference64x32 که ارجاع به اولین ساختار TransactionLogFragment را در گزارش تراکنش مشخص می کند. مقدار فیلد fcrTransactionLog نباید fcrZero باشد و نباید fcrNil باشد.
fcrFileNodeListRoot (12 بایت):
ساختار FileChunkReference64x32 که ارجاع به لیست گره های فایل ریشه را مشخص می کند. مقدار فیلد fcrFileNodeListRoot نباید fcrZero باشد و نباید fcrNil باشد.
fcrFreeChunkList (12 بایت):
ساختار FileChunkReference64x32 که ارجاع به اولین ساختار FreeChunkListFragment را مشخص می کند. اگر مقدار ساختار FileChunkReference64x32 fcrZero یا fcrNil باشد، پس لیست تکه های رایگان وجود ندارد.
cbExpectedFileLength (8 بایت):
یک عدد صحیح بدون علامت که اندازه این فایل ذخیره تجدید نظر را بر حسب بایت مشخص می کند.
cbFreeSpaceInFreeChunkList (8 بایت):
یک عدد صحیح بدون علامت که باید اندازه فضای خالی مشخص شده توسط لیست تکه های آزاد را بر حسب بایت مشخص کند.
guidFileVersion (16 بایت):
یک GUID. وقتی مقدار فیلد cTransactionsInLog یا فیلد guidDenyReadFileVersion در حال تغییر است، guidFileVersion باید به یک GUID جدید تغییر یابد.
nFileVersionGeneration (8 بایت):
یک عدد صحیح بدون علامت که تعداد دفعات تغییر فایل را مشخص می کند. هنگامی که فیلد guidFileVersion تغییر می کند، باید افزایش یابد.
guidDenyReadFileVersion (16 بایت):
یک GUID. هنگامی که محتوای موجود فایل در حال تغییر است، به استثنای ساختار Header فایل و بلوک های ذخیره سازی استفاده نشده، guidDenyReadFileVersion باید به یک GUID جدید تغییر یابد.
grfDebugLogFlags (4 بایت):
باید صفر باشد. باید نادیده گرفته شود
fcrDebugLog (12 بایت):
ساختار FileChunkReference64x32 که باید مقدار fcrZero داشته باشد. باید نادیده گرفته شود.
fcrAllocVerificationFreeChunkList (12 بایت):
ساختار FileChunkReference64x32 که باید fcrZero باشد. باید نادیده گرفته شود
bnCreated (4 بایت):
یک عدد صحیح بدون علامت که شماره ساخت برنامه ای را که این فایل ذخیره بازبینی را ایجاد کرده است را مشخص می کند. باید نادیده گرفته شود.
bnLastWroteToThisFile (4 بایت):
یک عدد صحیح بدون علامت که شماره ساخت برنامهای را که آخرین بار در این فایل ذخیرهسازی نسخه نوشته شده را مشخص میکند. باید نادیده گرفته شود.
bnOldestWritten (4 بایت):
یک عدد صحیح بدون علامت که شماره ساخت قدیمیترین برنامهای را که در این فایل ذخیره تجدیدنظر نوشته است را مشخص میکند. باید نادیده گرفته شود.
bnNewestWritten (4 بایت):
یک عدد صحیح بدون علامت که شماره ساخت جدیدترین برنامه کاربردی را که در این فایل ذخیره تجدید نظر نوشته است را مشخص می کند. باید نادیده گرفته شود.
rgbReserved (728 بایت):
باید صفر باشد. باید نادیده گرفته شود.