ترکیب فایل‌های Word به‌صورت برنامه‌نویسی یک نیاز مکرر هنگام ساخت برنامه‌های متمرکز بر اسناد است، به‌ویژه برای تولید گزارش‌ها یا تجمیع قراردادها. GroupDocs.Merger Cloud SDK for Java یک کتابخانه ساده مبتنی بر ابر فراهم می‌کند که به شما امکان می‌دهد فایل‌های DOCX را بدون نیاز به مدیریت سطح پایین فایل‌ها ترکیب کنید. در این راهنما خواهید آموخت که چگونه چندین سند Word را در Java ترکیب کنید، یک مثال کامل کد را ببینید، فراخوانی‌های معادل cURL را بررسی کنید و تنظیمات مورد نیاز را درک کنید. در پایان، آماده خواهید شد تا ادغام اسناد را در پروژه‌های Java خود یکپارچه کنید.

مثال کامل کارآمد برای ترکیب چندین سند Word در Java

این مثال نشان می‌دهد که چگونه می‌توان چندین سند Word را در Java با استفاده از Merger API ترکیب کرد.

import com.groupdocs.merger.cloud.client.ApiClient;
import com.groupdocs.merger.cloud.client.ApiException;
import com.groupdocs.merger.cloud.api.MergerApi;
import com.groupdocs.merger.cloud.model.FileInfo;
import com.groupdocs.merger.cloud.model.MergeOptions;
import java.util.ArrayList;
import java.util.List;

public class CombineWordDocuments {
    public static void main(String[] args) {
        // Initialize the API client with your credentials
        ApiClient apiClient = new ApiClient("YOUR_CLIENT_ID", "YOUR_CLIENT_SECRET");
        MergerApi mergerApi = new MergerApi(apiClient);

try {
            // List of Word documents to combine
            List<FileInfo> sourceFiles = new ArrayList<>();
            sourceFiles.add(new FileInfo().setFilePath("input1.docx"));
            sourceFiles.add(new FileInfo().setFilePath("input2.docx"));
            sourceFiles.add(new FileInfo().setFilePath("input3.docx"));

// Configure merge options
            MergeOptions mergeOptions = new MergeOptions();
            mergeOptions.setOutputPath("merged_output.docx");
            mergeOptions.setFileInfos(sourceFiles);

// Execute the merge operation
            FileInfo result = mergerApi.merge(mergeOptions);

System.out.println("Merge completed successfully. Output file: " + result.getFilePath());
        } catch (ApiException e) {
            System.err.println("An error occurred while merging documents: " + e.getMessage());
        }
    }
}

توجه: این مثال کد عملکرد اصلی را نشان می‌دهد. قبل از استفاده از آن در پروژه خود، اطمینان حاصل کنید که مسیرهای فایل و مقادیر پیکربندی را به‌گونه‌ای به‌روزرسانی کنید که با محیط واقعی شما مطابقت داشته باشد، بررسی کنید که تمام وابستگی‌های مورد نیاز به‌درستی نصب شده‌اند و به‌طور کامل در محیط توسعه خود تست کنید. اگر با مشکلی مواجه شدید، لطفاً به مستندات رسمی مراجعه کنید یا برای دریافت کمک به تیم پشتیبانی مراجعه نمایید.

ادغام فایل‌های Word از طریق REST API با استفاده از cURL

اگر ترجیح می‌دهید از رویکرد کاملاً REST استفاده کنید، همان عملیات ادغام می‌تواند با فراخوانی‌های cURL انجام شود. مراحل زیر نشان می‌دهند که چگونه یک توکن دسترسی دریافت کنید، فایل‌های منبع را بارگذاری کنید، درخواست ادغام را بدهید و نتیجه را دانلود کنید.

احراز هویت و دریافت توکن دسترسی:

curl -X POST "https://api.groupdocs.cloud/v2.0/auth/token" \
     -H "Content-Type: application/json" \
     -d '{"client_id":"YOUR_CLIENT_ID","client_secret":"YOUR_CLIENT_SECRET"}'

هر فایل DOCX را به فضای ذخیره‌سازی ابری خود بارگذاری کنید (به جای YOUR_ACCESS_TOKEN توکن مرحلهٔ قبلی را قرار دهید):

curl -X PUT "https://api.groupdocs.cloud/v2.0/storage/file/input1.docx" \
     -H "Authorization: Bearer YOUR_ACCESS_TOKEN" \
     -H "Content-Type: application/vnd.openxmlformats-officedocument.wordprocessingml.document" \
     --data-binary @input1.docx

دستور بارگذاری را برای input2.docx و input3.docx تکرار کنید.

درخواست ادغام را ایجاد کنید:

curl -X POST "https://api.groupdocs.cloud/v2.0/merger/merge" \
     -H "Authorization: Bearer YOUR_ACCESS_TOKEN" \
     -H "Content-Type: application/json" \
     -d '{
           "outputPath":"merged_output.docx",
           "fileInfos":[
               {"filePath":"input1.docx"},
               {"filePath":"input2.docx"},
               {"filePath":"input3.docx"}
           ]
         }'

دانلود سند ترکیب‌شده:

curl -X GET "https://api.groupdocs.cloud/v2.0/storage/file/merged_output.docx" \
     -H "Authorization: Bearer YOUR_ACCESS_TOKEN" \
     -o merged_output.docx

برای جزئیات بیشتر درباره پارامترهای درخواست، به مستندات رسمی API مراجعه کنید.

درک فرآیند ترکیب اسناد Word در Java

در زیر تجزیه و تحلیل گام به گام کد نشان داده شده در بالا آمده است.

  1. ایجاد یک ApiClient - new ApiClient("YOUR_CLIENT_ID", "YOUR_CLIENT_SECRET") یک اتصال به سرویس ابری GroupDocs برقرار می‌کند.
    ApiClient apiClient = new ApiClient("YOUR_CLIENT_ID", "YOUR_CLIENT_SECRET");
    
  2. نمونه‌سازی MergerApi - new MergerApi(apiClient) دسترسی به نقاط انتهایی مرتبط با ادغام را فراهم می‌کند.
    MergerApi mergerApi = new MergerApi(apiClient);
    
  3. آماده‌سازی فهرست فایل‌های منبع - هر شیء FileInfo به یک فایل DOCX ذخیره‌شده در ابر اشاره می‌کند. این فهرست به MergeOptions منتقل می‌شود.
    List<FileInfo> sourceFiles = new ArrayList<>();
    sourceFiles.add(new FileInfo().setFilePath("input1.docx"));
    
  4. پیکربندی MergeOptions - مسیر خروجی مورد نظر را تنظیم کنید و فهرست فایل‌های منبع را پیوست کنید.
    MergeOptions mergeOptions = new MergeOptions();
    mergeOptions.setOutputPath("merged_output.docx");
    mergeOptions.setFileInfos(sourceFiles);
    
  5. اجرای ادغام - mergerApi.merge(mergeOptions) درخواست را ارسال می‌کند و یک FileInfo برای سند ادغام‌شده برمی‌گرداند.
    FileInfo result = mergerApi.merge(mergeOptions);
    

برای دریافت فهرست کامل ویژگی‌های موجود، به مرجع API مراجعه کنید.

پیش‌نیازها و تنظیمات برای GroupDocs.Merger Cloud SDK

قبل از اینکه بتوانید کد را اجرا کنید، وابستگی Maven را به پروژه خود اضافه کنید و اطمینان حاصل کنید که حساب GroupDocs معتبر دارید.

SDK را به pom.xml خود اضافه کنید:

<dependency>
    <groupId>com.groupdocs</groupId>
    <artifactId>groupdocs-merger-cloud</artifactId>
    <version>25.11</version>
</dependency>

آخرین JARها و منبع را از صفحه دانلود دریافت کنید.
همچنین به Java 8 یا بالاتر و دسترسی به اینترنت برای تماس‌های ابری نیاز دارید.
یک حساب GroupDocs ایجاد کنید، Client ID و Client Secret خود را دریافت کنید و آن‌ها را ایمن نگه دارید.

نتیجه‌گیری

ادغام فایل‌های DOCX به‌صورت برنامه‌نویسی اکنون با GroupDocs.Merger Cloud SDK for Java ساده است. کد نمونه و قطعه‌های cURL دو روش انعطاف‌پذیر برای ترکیب چندین سند Word در Java را نشان می‌دهند، چه کتابخانه بومی را ترجیح دهید و چه تماس‌های مستقیم REST. به‌خاطر داشته باشید که اعتبارنامه‌های خود را پیکربندی کنید، در صورت نیاز فایل‌های بزرگ را به‌صورت استریم پردازش کنید و عملیات ادغام را با اسناد نماینده تست کنید. برای استقرارهای تولیدی به یک لایسنس پولی نیاز خواهید داشت؛ جزئیات قیمت‌گذاری در صفحه محصول موجود است و می‌توانید برای ارزیابی یک لایسنس موقت از صفحه لایسنس موقت درخواست کنید.

سوالات متداول

  • چگونه می‌توانم چندین سند Word را در Java ترکیب کنم بدون نوشتن کد سفارشی برای مدیریت فایل؟
    از GroupDocs.Merger Cloud SDK for Java استفاده کنید. این SDK تمام عملیات سطح پایین را انتزاع می‌کند و به شما امکان می‌دهد فایل‌های DOCX را با چند فراخوانی API ترکیب کنید.

  • آیا امکان ادغام اسنادی که در پوشه‌های ابری مختلف ذخیره شده‌اند وجود دارد؟
    بله. مسیرهای کامل فایل‌های ابری را در اشیاء FileInfo ارائه دهید و عملیات ادغام هر فایل را از مکان خود قبل از ترکیب آن‌ها دریافت خواهد کرد.

  • در صورتی که ادغام با ApiException شکست بخورد، چه کار باید انجام دهم؟
    پیام استثنا را برای جزئیاتی مانند فایل‌های گمشده یا مشکلات دسترسی بررسی کنید. اطمینان حاصل کنید که مسیرهای فایل صحیح هستند و حساب شما دسترسی خواندن/نوشتن به ذخیره‌سازی دارد. برای کدهای خطا به مستندات رسمی مراجعه کنید.

  • آیا برای هر محیط (توسعه، استیج، تولید) به یک لایسنس جداگانه نیاز دارم؟
    یک لایسنس واحد تمام محیط‌ها را پوشش می‌دهد، اما باید محدودیت‌های استفاده تعریف‌شده در توافق‌نامه لایسنس خود را رعایت کنید. برای تست می‌توانید از لایسنس موقت لینک شده در بالا استفاده کنید.

بیشتر بخوانید