Chuyển đổi DOCX sang DOC hoặc DOC sang DOCX bằng C ++

Tài liệu Microsoft Word có sẵn ở hai định dạng, DOCDOCX. DOC là định dạng cũ hơn và DOCX là định dạng kế thừa. Bạn có thể chuyển đổi các tệp DOCX sang định dạng DOC và ngược lại. Trong bài viết này, bạn sẽ học cách chuyển đổi tệp DOCX sang định dạng DOC và tệp DOC sang định dạng DOCX. Bạn cũng sẽ thấy cách thực hiện hàng loạt các chuyển đổi này. Để khám phá chi tiết các tình huống này, vui lòng xem các phần sau:

C ++ API để chuyển đổi DOCX sang DOC và DOC sang định dạng DOCX

Aspose.Words for C ++ là một thư viện C ++ gốc cho phép bạn tạo, đọc và sửa đổi các tài liệu Microsoft Word. Hơn nữa, nó cũng hỗ trợ chuyển đổi tệp DOCX sang định dạng DOC và tệp DOC sang định dạng DOCX. Bạn có thể cài đặt API thông qua NuGet hoặc tải xuống trực tiếp từ phần Tải xuống.

PM> Install-Package Aspose.Words.Cpp

Chuyển đổi tệp DOCX sang định dạng DOC bằng C ++

Bạn có thể chuyển đổi tệp DOCX sang định dạng DOC bằng cách làm theo các bước dưới đây.

Đoạn mã mẫu sau đây cho thấy cách chuyển đổi tệp DOCX sang tệp DOC bằng C ++.

// Tạo một phiên bản của lớp LoadOptions
auto loadOptions = System::MakeObject<LoadOptions>();

// Chỉ định LoadFormat của tài liệu từ đầu vào
loadOptions->set_LoadFormat(LoadFormat::Docx);

// Tải tệp DOCX nguồn
System::SharedPtr<Document> doc = System::MakeObject<Document>(u"SourceDirectory\\Word\\Sample 4.docx", loadOptions);

// Lưu tệp DOC
doc->Save(u"OutputDirectory\\output.doc", SaveFormat::Doc);

Chuyển đổi hàng loạt tệp DOCX sang định dạng DOC bằng C ++

Nếu bạn có hàng trăm tệp DOCX cần chuyển đổi sang định dạng DOC, bạn có thể dễ dàng chuyển đổi chúng bằng cách thực hiện chương trình một lần. Trong ví dụ này, chúng tôi sẽ sử dụng thư viện tăng cường để duyệt qua các tệp trong thư mục. Sau đây là các bước để chuyển đổi hàng loạt tệp DOCX sang định dạng DOC.

Đoạn mã mẫu sau đây trình bày cách chuyển đổi hàng loạt tệp DOCX sang định dạng DOC bằng C ++.

// Lặp lại các tệp trong thư mục
for (directory_entry& file : directory_iterator("SourceDirectory\\Word"))
{
    // Kiểm tra phần mở rộng tệp
    if (file.path().extension().string() == ".docx")
    {
        // Tạo một phiên bản của lớp LoadOptions
        auto loadOptions = System::MakeObject<LoadOptions>();

        // Chỉ định LoadFormat của tài liệu từ đầu vào
        loadOptions->set_LoadFormat(LoadFormat::Docx);

        // Tải tệp DOCX
        System::SharedPtr<Document> doc = System::MakeObject<Document>((System::String)file.path().string(), loadOptions);

        // Thay đổi phần mở rộng tệp
        System::String fileName = (System::String)file.path().filename().string();
        fileName = fileName.Replace(u".docx", u".doc");

        // Lưu tệp DOC
        doc->Save(System::String::Concat(u"OutputDirectory\\", fileName), SaveFormat::Doc);
    }
}

Chuyển đổi tệp DOC sang định dạng DOCX bằng C ++

Sau đây là các bước để chuyển đổi tệp DOC sang tệp DOCX.

Đoạn mã mẫu sau đây cho thấy cách chuyển đổi tệp DOC sang tệp DOCX bằng C ++.

// Tạo một phiên bản của lớp LoadOptions
auto loadOptions = System::MakeObject<LoadOptions>();

// Chỉ định LoadFormat của tài liệu từ đầu vào
loadOptions->set_LoadFormat(LoadFormat::Doc);

// Tải tệp DOC nguồn
System::SharedPtr<Document> doc = System::MakeObject<Document>(u"SourceDirectory\\Word\\Sample 1.doc", loadOptions);

// Lưu tệp DOCX
doc->Save(u"OutputDirectory\\output.docx", SaveFormat::Docx);

Chuyển đổi hàng loạt tệp DOC sang định dạng DOCX bằng C ++

Để chuyển đổi hàng loạt tệp DOC sang định dạng DOCX, hãy sử dụng các bước dưới đây.

Đoạn mã mẫu sau đây trình bày cách chuyển đổi hàng loạt tệp DOC sang định dạng DOCX bằng C ++.

// Lặp lại các tệp trong thư mục
for (directory_entry& file : directory_iterator("SourceDirectory\\Word"))
{
    // Kiểm tra phần mở rộng tệp
    if (file.path().extension().string() == ".doc")
    {
        // Tạo một phiên bản của lớp LoadOptions
        auto loadOptions = System::MakeObject<LoadOptions>();

        // Chỉ định LoadFormat của tài liệu từ đầu vào
        loadOptions->set_LoadFormat(LoadFormat::Doc);

        // Tải tệp DOC
        System::SharedPtr<Document> doc = System::MakeObject<Document>((System::String)file.path().string(), loadOptions);

        // Thay đổi phần mở rộng tệp
        System::String fileName = (System::String)file.path().filename().string();
        fileName = fileName.Replace(u".doc", u".docx");

        // Lưu tệp DOCX
        doc->Save(System::String::Concat(u"OutputDirectory\\", fileName), SaveFormat::Docx);
    }
}

Nhận giấy phép miễn phí

Bạn có thể dùng thử API mà không có giới hạn đánh giá bằng cách yêu cầu giấy phép tạm thời miễn phí.

Sự kết luận

Trong bài này, bạn đã học cách chuyển đổi tệp DOCX sang định dạng DOC và tệp DOC sang định dạng DOCX bằng C ++. Hơn nữa, bạn đã thấy cách thực hiện hàng loạt các chuyển đổi này bằng cách sử dụng thư viện tăng cường. Aspose. AdWords dành cho C ++ cung cấp một loạt các tính năng bổ sung để tự động hóa các tác vụ liên quan đến Word của bạn. Bạn có thể khám phá API chi tiết bằng cách truy cập tài liệu chính thức. Trong trường hợp có bất kỳ câu hỏi nào, vui lòng liên hệ với chúng tôi trên diễn đàn hỗ trợ miễn phí của chúng tôi.

Xem thêm