Microsoft Excel은 조직에서 데이터를 관리하는 데 널리 사용되는 소프트웨어입니다. 주로 고급 데이터 조작 및 표현 기능 때문입니다. 이 기술 시대에 문서는 인쇄본 대신 가상으로 공유됩니다. 이러한 파일에는 복잡하고 민감한 데이터가 포함될 수 있습니다. 따라서 이러한 파일의 무결성을 유지하려면 수정되지 않도록 보호해야 할 수 있습니다. 이를 위해 Excel의 보호 기능이 유용합니다. 이 기사에서는 C++를 사용하여 프로그래밍 방식으로 Excel 파일을 보호 및 보호 해제하는 방법을 배웁니다.
- Excel 파일 보호 및 보호 해제를 위한 C++ API
- C++를 사용하여 Excel 파일 보호
- C++를 사용하여 Excel 통합 문서 보호 해제
- C++를 사용하여 Excel 워크시트 보호
- C++를 사용하여 Excel 워크시트 보호 해제
- 무료 라이선스 받기
Excel 파일 보호 및 보호 해제를 위한 C++ API - 무료 다운로드
Aspose.Cells for C++는 Microsoft Excel을 설치하지 않고도 Excel 파일을 조작할 수 있는 네이티브 C++ 라이브러리입니다. 따라서 많은 Excel 워크플로를 자동화하는 데 사용됩니다. API는 Excel 파일 보호 및 보호 해제를 포함하여 여러 가지 유용한 기능을 제공합니다. NuGet을 통해 API를 설치하거나 다운로드 섹션에서 직접 다운로드할 수 있습니다.
PM> Install-Package Aspose.Cells.Cpp
C++를 사용하여 Excel 파일 보호
Aspose.Cells for C++는 Excel 파일을 보호하기 위해 다음과 같은 보호 유형을 제공합니다.
- 모두: 사용자가 아무 것도 수정할 수 없도록 전체 데이터를 보호합니다.
- 내용: 워크시트의 내용을 보호합니다.
- 개체: 사용자가 그리기 개체를 수정할 수 없도록 워크시트의 개체를 보호합니다.
- 시나리오: 워크시트의 시나리오를 보호합니다.
- 구조: 통합 문서의 구조를 보호합니다.
- Windows: 저장된 창을 수정하지 못하도록 보호합니다.
- 없음: 보호가 적용되지 않습니다.
다음은 C++를 사용하여 Excel 파일을 보호하는 단계입니다.
- IWorkbook 클래스를 사용하여 Excel 파일을 로드합니다.
- IWorkbook->Protect(Aspose::Cells::ProtectionType protectionType, intrusiveptr)로 파일을 보호합니다.Aspose::Cells::Systems::String 암호) 메서드입니다.
- 보호된 Excel 파일을 IWorkbook->Save(intrusiveptrAspose::Cells::Systems::String fileName) 메서드입니다.
다음 코드 샘플은 C++를 사용하여 Excel 파일을 보호하는 방법을 보여줍니다.
// 소스 디렉토리 경로.
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++를 사용하여 Excel 통합 문서 보호 해제
다음은 Excel 파일의 보호를 해제하는 단계입니다.
- IWorkbook 클래스를 이용하여 엑셀 파일을 불러옵니다.
- IWorkbook->Unprotect(intrusiveptrAspose::Cells::Systems::String 암호) 메서드입니다.
- IWorkbook->GetISettings()->SetPassword(intrusiveptr)를 사용하여 암호를 NULL로 설정합니다.Aspose::Cells::Systems::String 값) 메서드입니다.
- IWorkbook->Save(intrusiveptrAspose::Cells::Systems::String fileName) 메서드입니다.
다음 코드 샘플은 Excel 파일의 보호를 해제하는 방법을 보여줍니다.
// 소스 디렉토리 경로.
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 워크시트 보호
Excel 파일을 보호하는 것 외에도 개별 워크시트를 보호할 수도 있습니다. Excel 워크시트를 보호하려면 다음 단계를 따르십시오.
- 먼저 IWorkbook 클래스를 사용하여 Excel 파일을 로드합니다.
- IWorkbook->GetIWorksheets()->GetObjectByIndex( Aspose::Cells::Systems::Int32 index) 메서드를 사용하여 워크시트 컬렉션에서 보호하려는 워크시트를 가져옵니다.
- IWorksheet->GetIProtection() 메서드를 사용하여 워크시트의 보호를 가져옵니다.
- SetAllowEditingContent(bool 값)와 같은 보호 옵션을 설정합니다.
- IProtection->SetPassword(intrusiveptrAspose::Cells::Systems::String 값) 메서드입니다.
- 마지막으로 IWorkbook->Save(intrusiveptr)를 사용하여 보호된 워크시트와 함께 Excel 파일을 저장합니다.Aspose::Cells::Systems::String fileName) 메서드입니다.
다음 코드 샘플은 Excel 워크시트를 보호하는 방법을 보여줍니다.
// 소스 디렉토리 경로.
StringPtr srcDir = new String("SourceDirectory\\");
// 출력 디렉토리 경로.
StringPtr outDir = new String("OutputDirectory\\");
// 엑셀 파일 불러오기
intrusive_ptr<IWorkbook> workbook = Factory::CreateIWorkbook(srcDir->StringAppend(new String("sampleExcelFile.xlsx")));
// Excel 파일의 첫 번째 워크시트에 액세스
intrusive_ptr<IWorksheet> worksheet = workbook->GetIWorksheets()->GetObjectByIndex(0);
// 워크시트의 보호에 액세스
intrusive_ptr<IProtection> protection = worksheet->GetIProtection();
// 다음 3가지 방법은 Excel 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++를 사용하여 Excel 워크시트 보호 해제
다음은 Excel 워크시트의 보호를 해제하는 단계입니다.
- IWorkbook 클래스를 이용하여 엑셀 파일을 불러옵니다.
- IWorkbook->GetIWorksheets()->GetObjectByIndex( Aspose::Cells::Systems::Int32 index) 메서드를 사용하여 보호된 워크시트에 액세스합니다.
- IWorksheet->Unprotect(intrusiveptrAspose::Cells::Systems::String 암호) 메서드입니다.
- 마지막으로 IWorkbook->Save(intrusiveptrAspose::Cells::Systems::String fileName) 메서드입니다.
다음 코드 샘플은 C++를 사용하여 Excel 워크시트의 보호를 해제하는 방법을 보여줍니다.
// 소스 디렉토리 경로.
StringPtr srcDir = new String("SourceDirectory\\");
// 출력 디렉토리 경로.
StringPtr outDir = new String("OutputDirectory\\");
// 엑셀 파일 불러오기
intrusive_ptr<IWorkbook> workbook = Factory::CreateIWorkbook(srcDir->StringAppend(new String("sampleExcelFileProtectedWorksheet.xlsx")));
// Excel 파일의 첫 번째 워크시트에 액세스
intrusive_ptr<IWorksheet> worksheet = workbook->GetIWorksheets()->GetObjectByIndex(0);
// 워크시트 보호 해제
worksheet->Unprotect(new String("12345"));
// 엑셀 파일 저장
workbook->Save(outDir->StringAppend(new String("sampleExcelFileUnprotectedWorksheet_out.xlsx")));
무료 라이선스 받기
무료 임시 라이선스를 요청하면 평가 제한 없이 API를 사용해 볼 수 있습니다.
결론
이 문서에서는 C++를 사용하여 Excel 파일을 보호 및 보호 해제하는 방법을 배웠습니다. 그 외에도 수정 사항에 대해 워크시트를 보호하는 방법도 배웠습니다. Aspose.Cells for C++는 셀의 텍스트 교체 또는 그래프 및 차트에 표시된 복잡한 데이터 처리와 같은 작업을 자동화하기 위한 방대한 Excel 조작 API입니다. 공식문서를 통해 API를 자세히 살펴볼 수 있다.