Microsoft Excel یک نرم افزار محبوب برای مدیریت داده ها در سازمان ها است. این عمدتا به دلیل دستکاری داده ها و ویژگی های نمایش پیشرفته آن است. در این عصر تکنولوژی، اسناد بهجای نسخههای چاپی، بهطور مجازی به اشتراک گذاشته میشوند. این فایل ها ممکن است حاوی داده های پیچیده و حساس باشند. بنابراین برای حفظ یکپارچگی چنین فایلهایی، ممکن است لازم باشد از آنها در برابر تغییر محافظت کنید. ویژگی های حفاظتی اکسل برای این منظور مفید است. در این مقاله یاد می گیرید که چگونه از فایل های اکسل به صورت برنامه نویسی با استفاده از ++C محافظت کرده و از آن خارج کنید.
- C++ API برای محافظت و عدم محافظت از فایل های اکسل
- از فایل های اکسل با استفاده از ++C محافظت کنید
- اکسل کار را با استفاده از C++ لغو محافظت کنید
- از کاربرگ اکسل با استفاده از C++ محافظت کنید
- صفحه کار اکسل را با استفاده از C++ حذف کنید
- مجوز رایگان دریافت کنید
C++ API برای محافظت و عدم محافظت از فایل های اکسل - دانلود رایگان
Aspose.Cells for C++ یک کتابخانه بومی C++ است که به شما امکان می دهد فایل های اکسل را بدون نیاز به نصب Microsoft Excel دستکاری کنید. بنابراین، برای خودکارسازی بسیاری از گردشهای کاری اکسل استفاده میشود. API مجموعه ای از ویژگی های مفید از جمله محافظت و عدم محافظت از فایل های Excel را ارائه می دهد. میتوانید API را از طریق NuGet نصب کنید یا آن را مستقیماً از بخش Downloads دانلود کنید.
PM> Install-Package Aspose.Cells.Cpp
از فایل های اکسل با استفاده از ++C محافظت کنید
Aspose.Cells برای C++ انواع حفاظت زیر را برای محافظت از فایل های اکسل ارائه می دهد.
- همه: از کل داده ها محافظت کنید تا کاربر نتواند چیزی را تغییر دهد.
- محتویات: از محتوای کاربرگ محافظت کنید.
- اشیاء: از اشیاء موجود در کاربرگ محافظت کنید تا کاربر نتواند اشیاء طراحی را تغییر دهد.
- سناریوها: از سناریوهای موجود در کاربرگ محافظت کنید.
- ساختار: از ساختار کتاب کار محافظت کنید.
- Windows: از ویندوزهای ذخیره شده در برابر تغییرات محافظت کنید.
- هیچ: هیچ حفاظتی اعمال نمی شود.
مراحل زیر برای محافظت از فایل های اکسل با استفاده از C++ آورده شده است.
- فایل اکسل را با استفاده از کلاس IWorkbook بارگیری کنید.
- از فایل با IWorkbook->Protect(Aspose::Cells::ProtectionType protectType, intrusiveptr محافظت کنیدAspose::Cells::Systems::String رمز عبور) روش.
- فایل اکسل محافظت شده را با IWorkbook->Save(intrusiveptrAspose::Cells::Systems::String filename) روش.
نمونه کد زیر نحوه محافظت از فایل های اکسل با استفاده از C++ را نشان می دهد.
// مسیر دایرکتوری منبع.
StringPtr srcDir = new String("SourceDirectory\\");
// مسیر دایرکتوری خروجی
StringPtr outDir = new String("OutputDirectory\\");
// فایل اکسل را بارگیری کنید
intrusive_ptr<IWorkbook> workbook = Factory::CreateIWorkbook(srcDir->StringAppend(new String("sampleExcelFile.xlsx")));
// با مشخص کردن نوع حفاظت از کتاب کار محافظت کنید
workbook->Protect(ProtectionType::ProtectionType_All, new String("12345"));
// فایل اکسل را ذخیره کنید
workbook->Save(outDir->StringAppend(new String("sampleExcelFile_protected_out.xlsx")));
با استفاده از C++ از Workbook Excel محافظت کنید
مراحل زیر برای حذف محافظت از فایل اکسل آورده شده است.
- فایل اکسل را با استفاده از کلاس IWorkbook بارگیری کنید.
- فایل را با IWorkbook->Unprotect(intrusiveptrAspose::Cells::Systems::String رمز عبور) روش.
- با استفاده از IWorkbook->GetISettings()->SetPassword(intrusiveptr، رمز عبور را روی NULL تنظیم کنید.Aspose::Cells::Systems::String مقدار) روش.
- فایل اکسل محافظت نشده را با IWorkbook->Save(intrusiveptrAspose::Cells::Systems::String filename) روش.
نمونه کد زیر نحوه حذف محافظت از فایل های اکسل را نشان می دهد.
// مسیر دایرکتوری منبع.
StringPtr srcDir = new String("SourceDirectory\\");
// مسیر دایرکتوری خروجی
StringPtr outDir = new String("OutputDirectory\\");
// فایل اکسل را بارگیری کنید
intrusive_ptr<IWorkbook> workbook = Factory::CreateIWorkbook(srcDir->StringAppend(new String("sampleExcelFileProtected.xlsx")));
// کتاب کار را لغو محافظت کنید
workbook->Unprotect(new String("12345"));
// رمز عبور را null قرار دهید
workbook->GetISettings()->SetPassword(NULL);
// فایل اکسل را ذخیره کنید
workbook->Save(outDir->StringAppend(new String("sampleExcelFileUnprotected_out.xlsx")));
از کاربرگ اکسل با استفاده از C++ محافظت کنید
علاوه بر محافظت از فایل های اکسل، می توانید از کاربرگ های جداگانه نیز محافظت کنید. لطفاً از مراحل زیر برای محافظت از کاربرگ های Excel استفاده کنید.
- ابتدا فایل اکسل را با استفاده از کلاس IWorkbook بارگذاری کنید.
- با استفاده از روش IWorkbook->GetIWorksheets()->GetObjectByIndex( Aspose::Cells::Systems::Int32 index) کاربرگی را که می خواهید از مجموعه کاربرگ محافظت کنید، دریافت کنید.
- با استفاده از روش IWorksheet->GetIPprotection() حفاظت کاربرگ را دریافت کنید.
- گزینه های حفاظتی مانند SetAllowEditingContent (مقدار bool) را تنظیم کنید.
- رمز عبور را با استفاده از IProtection->SetPassword (intrusiveptrAspose::Cells::Systems::String مقدار) روش.
- در نهایت، فایل اکسل را با کاربرگ محافظت شده با استفاده از IWorkbook->Save(intrusiveptr ذخیره کنید.Aspose::Cells::Systems::String filename) روش.
نمونه کد زیر نحوه محافظت از کاربرگ اکسل را نشان می دهد.
// مسیر دایرکتوری منبع.
StringPtr srcDir = new String("SourceDirectory\\");
// مسیر دایرکتوری خروجی
StringPtr outDir = new String("OutputDirectory\\");
// فایل اکسل را بارگیری کنید
intrusive_ptr<IWorkbook> workbook = Factory::CreateIWorkbook(srcDir->StringAppend(new String("sampleExcelFile.xlsx")));
// دسترسی به اولین کاربرگ در فایل اکسل
intrusive_ptr<IWorksheet> worksheet = workbook->GetIWorksheets()->GetObjectByIndex(0);
// به حفاظت کاربرگ دسترسی پیدا کنید
intrusive_ptr<IProtection> protection = worksheet->GetIProtection();
// 3 روش زیر فقط برای اکسل 2000 و فرمت های قبلی است
protection->SetAllowEditingContent(false);
protection->SetAllowEditingObject(false);
protection->SetAllowEditingScenario(false);
// محافظت از کاربرگ اول با رمز عبور "12345"
protection->SetPassword(new String("12345"));
// فایل اکسل را ذخیره کنید
workbook->Save(outDir->StringAppend(new String("sampleExcelFile_protectedWorksheet_out.xlsx")));
صفحه کار اکسل را با استفاده از C++ حذف کنید
مراحل زیر برای عدم محافظت از کاربرگ های اکسل آورده شده است.
- فایل اکسل را با استفاده از کلاس IWorkbook بارگیری کنید.
- با استفاده از روش IWorkbook->GetIWorksheets()->GetObjectByIndex( Aspose::Cells::Systems::Int32 index) به کاربرگ محافظت شده دسترسی پیدا کنید.
- با استفاده از IWorksheet->Unprotect(intrusiveptr، کاربرگ را حذف کنیدAspose::Cells::Systems::String رمز عبور) روش.
- در نهایت، فایل اکسل را با کاربرگ محافظت نشده با استفاده از IWorkbook->Save(intrusiveptr ذخیره کنید.Aspose::Cells::Systems::String filename) روش.
نمونه کد زیر نحوه حذف محافظت از کاربرگ اکسل با استفاده از C++ را نشان می دهد.
// مسیر دایرکتوری منبع.
StringPtr srcDir = new String("SourceDirectory\\");
// مسیر دایرکتوری خروجی
StringPtr outDir = new String("OutputDirectory\\");
// فایل اکسل را بارگیری کنید
intrusive_ptr<IWorkbook> workbook = Factory::CreateIWorkbook(srcDir->StringAppend(new String("sampleExcelFileProtectedWorksheet.xlsx")));
// دسترسی به اولین کاربرگ در فایل اکسل
intrusive_ptr<IWorksheet> worksheet = workbook->GetIWorksheets()->GetObjectByIndex(0);
// کاربرگ را لغو محافظت کنید
worksheet->Unprotect(new String("12345"));
// فایل اکسل را ذخیره کنید
workbook->Save(outDir->StringAppend(new String("sampleExcelFileUnprotectedWorksheet_out.xlsx")));
مجوز رایگان دریافت کنید
با درخواست [مجوز موقت رایگان] میتوانید API را بدون محدودیت ارزیابی امتحان کنید.
نتیجه
در این مقاله نحوه محافظت و عدم محافظت از فایل های اکسل با استفاده از C++ را یاد گرفتید. علاوه بر آن، شما همچنین یاد گرفته اید که چگونه از برگه ها در برابر تغییرات محافظت کنید. Aspose.Cells برای C++ یک API دستکاری اکسل گسترده برای خودکارسازی کارهایی مانند جایگزینی متن در سلول ها یا پردازش داده های پیچیده نمایش داده شده در نمودارها و نمودارها است. با استفاده از مستندات رسمی میتوانید API را با جزئیات کاوش کنید.