diff --git a/html/arabic/java/configuring-environment/_index.md b/html/arabic/java/configuring-environment/_index.md
index 3e3182dea6..c1411f1187 100644
--- a/html/arabic/java/configuring-environment/_index.md
+++ b/html/arabic/java/configuring-environment/_index.md
@@ -55,6 +55,9 @@ weight: 29
[تعلم كيفية إعداد خدمة شبكة في Aspose.HTML for Java.](./setup-network-service/)
+### [ضبط وكيل المستخدم المخصص وأبعاد الشاشة في Aspose.HTML for Java](./set-custom-user-agent-and-screen-dimensions-in-aspose-html-f/)
+تعلم كيفية تعيين وكيل المستخدم المخصص وأبعاد الشاشة في Aspose.HTML for Java لتحسين عمليات التحويل.
+
## كيفية تكوين خدمة وقت التشغيل
HTML الديناميكي غالبًا ما يحتوي على سكريبتات يجب تشغيلها قبل العرض. خدمة وقت التشغيل تتحكم في تنفيذ السكريبتات، مما يتيح لك تحديد استهلاك المعالج، ضبط مهلات الوقت، ومنع الحلقات اللانهائية—وهو أمر حاسم لتحويلات مستقرة وعالية الأداء.
@@ -110,6 +113,9 @@ HTML الديناميكي غالبًا ما يحتوي على سكريبتات
### [إعداد خدمة الشبكة في Aspose.HTML for Java](./setup-network-service/)
تعلم كيفية إعداد خدمة شبكة في Aspose.HTML for Java، إدارة موارد الشبكة، وتحويل HTML إلى PNG مع معالجة الأخطاء المخصصة.
+### [ضبط وكيل المستخدم المخصص وأبعاد الشاشة في Aspose.HTML for Java](./set-custom-user-agent-and-screen-dimensions-in-aspose-html-f/)
+تعلم كيفية تعيين وكيل المستخدم المخصص وأبعاد الشاشة في Aspose.HTML for Java لتحسين عمليات التحويل.
+
### [تكوين خدمة وقت التشغيل في Aspose.HTML for Java](./configure-runtime-service/)
تعلم كيفية تكوين خدمة وقت التشغيل في Aspose.HTML for Java لتحسين تنفيذ السكريبتات، منع الحلقات اللانهائية، وتحسين أداء التطبيق.
diff --git a/html/arabic/java/configuring-environment/set-custom-user-agent-and-screen-dimensions-in-aspose-html-f/_index.md b/html/arabic/java/configuring-environment/set-custom-user-agent-and-screen-dimensions-in-aspose-html-f/_index.md
new file mode 100644
index 0000000000..516d13e9f8
--- /dev/null
+++ b/html/arabic/java/configuring-environment/set-custom-user-agent-and-screen-dimensions-in-aspose-html-f/_index.md
@@ -0,0 +1,191 @@
+---
+category: general
+date: 2026-09-29
+description: قم بتعيين وكيل مستخدم مخصص في Aspose.HTML للغة Java وتعلم كيفية ضبط حجم
+ الشاشة الافتراضية للحصول على عرض HTML دقيق.
+draft: false
+images:
+- PLACEHOLDER_URL/og-image.png
+keywords:
+- set custom user agent
+- set virtual screen size
+- specify user agent
+- set screen dimensions
+- set screen width
+language: ar
+lastmod: 2026-09-29
+og_description: قم بتعيين وكيل مستخدم مخصص في Aspose.HTML للـ Java وتعرّف على كيفية
+ ضبط حجم الشاشة الافتراضية للحصول على عرض HTML دقيق.
+og_image_alt: Diagram showing how to set custom user agent and screen dimensions in
+ a Java sandbox
+og_title: تعيين وكيل مستخدم مخصص وأبعاد الشاشة في Aspose.HTML للغة Java
+schemas:
+- author: Aspose
+ dateModified: '2026-09-29'
+ description: Set custom user agent in Aspose.HTML for Java and learn how to set
+ virtual screen size for accurate HTML rendering.
+ headline: Set custom user agent and screen dimensions in Aspose.HTML for Java
+ type: TechArticle
+tags:
+- Aspose.HTML
+- Java
+- sandbox
+- user agent
+- screen size
+title: تعيين وكيل مستخدم مخصص وأبعاد الشاشة في Aspose.HTML لجافا
+url: /ar/java/configuring-environment/set-custom-user-agent-and-screen-dimensions-in-aspose-html-f/
+---
+
+{{< blocks/products/pf/main-wrap-class >}}
+{{< blocks/products/pf/main-container >}}
+{{< blocks/products/pf/tutorial-page-section >}}
+
+# تعيين وكيل مستخدم مخصص وأبعاد الشاشة في Aspose.HTML للـ Java
+
+إذا كنت بحاجة إلى **تعيين وكيل مستخدم مخصص** أثناء عرض HTML باستخدام Aspose.HTML للـ Java، يوضح لك هذا الدليل بالضبط كيفية القيام بذلك. من خلال تكوين sandbox ستحصل أيضًا على القدرة على **تعيين حجم الشاشة الافتراضي**، مما يضمن أن التخطيط يتطابق مع مساحة عرض المتصفح الحقيقية.
+
+ستنتهي من هذا البرنامج التعليمي ببرنامج كامل قابل للتنفيذ يقوم **بتحديد وكيل المستخدم**، **بتعيين عرض الشاشة**، و**بتعيين ارتفاع الشاشة**. لا تحتاج إلى أدوات خارجية—فقط Aspose.HTML للـ Java وبيئة تشغيل Java 8+.
+
+## ما ستتعلمه
+
+* كيفية إنشاء `SandboxConfiguration` لعزل عملية العرض.
+* كيفية **تعيين وكيل مستخدم مخصص** ولماذا يهم ذلك للصفحات المتجاوبة.
+* كيفية **تعيين حجم الشاشة الافتراضي** (عرض الشاشة وارتفاعها) للحصول على تخطيط دقيق.
+* كيفية تحميل ملف HTML داخل الـ sandbox وحفظ النتيجة المعالجة.
+* المشكلات الشائعة ونصائح أفضل الممارسات للعرض داخل sandbox.
+
+> **المتطلبات المسبقة** – تحتاج إلى ترخيص صالح لـ Aspose.HTML للـ Java، Java 8 أو أحدث، وبيئة تطوير متكاملة (IntelliJ IDEA، Eclipse، أو VS Code). يستخدم المثال ملف `input.html` محلي، لكن أي URL قابل للوصول يعمل.
+
+
+
+## الخطوة 1: إنشاء تكوين sandbox (الأساس)
+
+العزل sandbox يعزل بيئة العرض عن JVM المضيف، وهو أمر أساسي عندما تريد **تعيين وكيل مستخدم مخصص** أو تغيير حجم مساحة العرض.
+
+```java
+import com.aspose.html.sandbox.SandboxConfiguration;
+
+// Create a fresh sandbox configuration object
+SandboxConfiguration sandboxConfig = new SandboxConfiguration();
+```
+
+*لماذا هذه الخطوة؟*
+`SandboxConfiguration` يحتوي على جميع خيارات العرض، بما في ذلك **أبعاد الشاشة** وسلاسل **user‑agent**. من خلال تكوينه قبل تحميل المستند، تضمن أن محرك HTML يحترم تلك الإعدادات من الطلب الأول.
+
+## الخطوة 2: تعيين أبعاد الشاشة لمحاكاة جهاز حقيقي
+
+غالبًا ما تقرأ المواقع المتجاوبة `window.innerWidth` و `window.innerHeight`. لجعل المحرك يعتقد أنه يعمل على شاشة 1024 × 768، عليك **تعيين حجم الشاشة الافتراضي**:
+
+```java
+// Define the virtual screen size for the sandboxed document
+sandboxConfig.setScreenWidth(1024); // set screen width
+sandboxConfig.setScreenHeight(768); // set screen height
+```
+
+*لماذا هذا مهم* – إذا تجاهلت **تعيين أبعاد الشاشة**، قد يستخدم العارض مساحة عرض صغيرة افتراضيًا، مما يؤدي إلى اختيار استعلامات وسائط CSS لتطبيق تخطيط الهاتف المحمول. من خلال **تعيين عرض الشاشة** و**تعيين ارتفاع الشاشة** صراحةً، تتحكم في القواعد التي تُطبق.
+
+## الخطوة 3: تحديد سلسلة وكيل مستخدم مخصص
+
+بعض صفحات الويب تقدم محتوى مختلف بناءً على رأس الـ user‑agent. لت **تحديد وكيل المستخدم** ببساطة قم بتعيينه في تكوين الـ sandbox:
+
+```java
+// Set a custom user‑agent string that will be sent during resource loading
+sandboxConfig.setUserAgent("AsposeHTML/1.0");
+```
+
+*لماذا استخدام وكيل مستخدم مخصص؟*
+يمكن لسلسلة مخصصة تجاوز اكتشاف الروبوتات، تفعيل ميزات مخصصة لأجهزة سطح المكتب، أو اختبار كيفية تصرف الموقع لإصدار متصفح معين. يقوم محرك Aspose بتمرير هذه القيمة مع كل طلب HTTP يتم أثناء تحميل الموارد الخارجية (CSS، الصور، السكريبتات).
+
+## الخطوة 4: تحميل مستند HTML داخل الـ sandbox
+
+الآن بعد أن تم تكوين الـ sandbox بالكامل، قم بتحميل ملف HTML. المُنشئ الذي يأخذ مسار ملف و`SandboxConfiguration` يطبق تلقائيًا جميع الإعدادات التي عرّفناها.
+
+```java
+import com.aspose.html.HTMLDocument;
+
+// Load the HTML file using the previously configured sandbox
+HTMLDocument document = new HTMLDocument("YOUR_DIRECTORY/input.html", sandboxConfig);
+```
+
+إذا كنت بحاجة للتحميل من URL بعيد، استبدل مسار الملف بسلسلة URL—ستظل Aspose.HTML تحترم **وكيل المستخدم المخصص** و**أبعاد الشاشة**.
+
+## الخطوة 5: حفظ الناتج المعالج
+
+بعد انتهاء تحميل المستند، يمكنك حفظه بأي تنسيق مدعوم. هنا نكتب ملف HTML داخل sandbox يعكس أي تغييرات في DOM ناتجة عن الإعدادات المخصصة.
+
+```java
+// Save the processed document to the desired output location
+document.save("YOUR_DIRECTORY/sandboxed_output.html");
+```
+
+سيحتوي الملف المحفوظ على نفس العلامات، لكن أي سكريبتات استعلمت عن `navigator.userAgent` أو فحصت `window.innerWidth` سترى الآن القيم التي قدمتها.
+
+## مثال كامل قابل للتنفيذ
+
+جمع جميع الخطوات معًا يمنحك برنامجًا مستقلًا يمكنك نسخه، لصقه، وتشغيله.
+
+```java
+import com.aspose.html.HTMLDocument;
+import com.aspose.html.sandbox.SandboxConfiguration;
+
+public class SandboxDemo {
+ public static void main(String[] args) throws Exception {
+ // Step 1: Create a sandbox configuration to isolate the rendering environment
+ SandboxConfiguration sandboxConfig = new SandboxConfiguration();
+
+ // Step 2: Define the virtual screen size for the sandboxed document
+ sandboxConfig.setScreenWidth(1024); // set screen width
+ sandboxConfig.setScreenHeight(768); // set screen height
+
+ // Step 3: Set a custom user‑agent string to be used during loading
+ sandboxConfig.setUserAgent("AsposeHTML/1.0"); // set custom user agent
+
+ // Step 4: Load the HTML document within the sandbox using the configuration
+ HTMLDocument document = new HTMLDocument("YOUR_DIRECTORY/input.html", sandboxConfig);
+
+ // Step 5: Save the processed document to the desired output location
+ document.save("YOUR_DIRECTORY/sandboxed_output.html");
+ }
+}
+```
+
+### النتيجة المتوقعة
+
+تشغيل البرنامج ينشئ `sandboxed_output.html`. إذا فتحته في متصفح وفحصت `navigator.userAgent` عبر وحدة التحكم، سترى **AsposeHTML/1.0**. بالمثل، سيظهر `window.innerWidth` القيمة **1024**، مما يؤكد أن **تعيين أبعاد الشاشة** عمل كما هو مقصود.
+
+## أسئلة شائعة ومعالجة الحالات الطرفية
+
+| السؤال | الإجابة |
+|----------|--------|
+| **ماذا لو قامت الصفحة بتحميل موارد إضافية من نطاق مختلف؟** | يقوم الـ sandbox بتمرير **وكيل المستخدم المخصص** مع كل طلب، لكن سياسات المصدر المتقاطع لا تزال سارية. استخدم `sandboxConfig.setAllowCrossDomain(true)` إذا كنت بحاجة لتخفيف تلك القيود. |
+| **هل يمكنني تغيير حجم الشاشة بعد تحميل المستند؟** | لا. تُقرأ أبعاد الشاشة أثناء تمريرة التخطيط الأولية. لتصوير بحجم مختلف، أنشئ `SandboxConfiguration` جديدًا وأعد تحميل المستند. |
+| **هل أحتاج إلى استدعاء `document.close()`؟** | `HTMLDocument` يطبق `AutoCloseable`. استخدام كتلة try‑with‑resources يضمن التنظيف المناسب، لكن استدعاء `close()` صريح اختياري في السكريبتات البسيطة. |
+| **كيف يختلف هذا عن تعيين وكيل المستخدم في عميل HTTP؟** | تعيين وكيل المستخدم على الـ sandbox يؤثر على **جميع** طلبات الموارد التي يقوم بها محرك HTML، وليس فقط طلب HTML الأولي. هذا يحاكي المتصفح الحقيقي بشكل أقرب. |
+| **هل الـ sandbox آمن للـ HTML غير الموثوق به؟** | نعم. الـ sandbox يعزل الوصول إلى نظام الملفات ويحد من المكالمات الشبكية وفقًا للتكوين، مما يقلل من خطر السكريبتات الخبيثة التي تؤثر على JVM المضيف. |
+
+## نصائح احترافية
+
+* **إعادة استخدام التكوينات** – إذا قمت بعرض العديد من الصفحات بنفس مساحة العرض، أنشئ `SandboxConfiguration` واحدًا وأعد استخدامه لتجنب عبء إنشاء الكائنات.
+* **التصحيح باستخدام السجلات** – فعّل سجلات Aspose.HTML (`sandboxConfig.setLogLevel(LogLevel.DEBUG)`) لتعرف أي موارد تم جلبها باستخدام وكيل المستخدم المخصص.
+* **الدمج مع استعلامات وسائط CSS** – من خلال تعديل **تعيين عرض الشاشة** يمكنك اختبار سلوك التصميم المتجاوب على الأجهزة اللوحية، الهواتف، أو شاشات الحواسيب الكبيرة دون فتح متصفح حقيقي.
+
+## الخلاصة
+
+أنت الآن تعرف كيف **تعيين وكيل مستخدم مخصص** و**تعيين أبعاد الشاشة** عند عرض HTML باستخدام Aspose.HTML للـ Java. من خلال تكوين sandbox، تعزل البيئة، تتحكم في مساحة العرض، وتضمن أن الموارد الخارجية ترى رؤوس الطلبات التي تحددها بالضبط. هذه التقنية أساسية لاختبار التخطيطات المتجاوبة، تجاوز حواجز الروبوتات، أو إعادة إنتاج ميزات سطح المكتب فقط في خطوط الأنابيب الآلية.
+
+بعد ذلك، قد تستكشف **كيفية تعيين ملفات تعريف الارتباط المخصصة** أو **التقاط لقطات شاشة مُصدرة** باستخدام واجهة برمجة تطبيقات العرض في Aspose.HTML—كلا المفهومين يبنيان على نمط تكوين sandbox نفسه الذي تعلمته الآن.
+
+برمجة سعيدة!
+
+## ماذا يجب أن تتعلمه بعد ذلك؟
+
+الدروس التالية تغطي مواضيع ذات صلة وثيقة تبني على التقنيات الموضحة في هذا الدليل. كل مصدر يتضمن أمثلة شفرة كاملة مع شروحات خطوة بخطوة لمساعدتك على إتقان ميزات API إضافية واستكشاف أساليب تنفيذ بديلة في مشاريعك.
+
+- [العرض بدقة DPI عالية في Java – التقاط لقطات شاشة للويب مع وكيل مستخدم مخصص](/html/english/java/conversion-html-to-various-image-formats/high-dpi-rendering-in-java-capture-webpage-screenshots-with/)
+- [كيفية تحميل HTML، تعيين DPI للجهاز وقراءة لون الخلفية](/html/english/java/advanced-usage/how-to-load-html-set-device-dpi-read-background-color/)
+- [إنشاء ملف HTML في Java وإعداد خدمة الشبكة (Aspose.HTML)](/html/english/java/configuring-environment/setup-network-service/)
+
+{{< /blocks/products/pf/tutorial-page-section >}}
+{{< /blocks/products/pf/main-container >}}
+{{< /blocks/products/pf/main-wrap-class >}}
+{{< blocks/products/products-backtop-button >}}
\ No newline at end of file
diff --git a/html/arabic/java/creating-managing-html-documents/_index.md b/html/arabic/java/creating-managing-html-documents/_index.md
index 1220d69ba8..4b2eb13737 100644
--- a/html/arabic/java/creating-managing-html-documents/_index.md
+++ b/html/arabic/java/creating-managing-html-documents/_index.md
@@ -62,6 +62,8 @@ url: /ar/java/creating-managing-html-documents/
اكتشف كيفية تحميل مستندات HTML بسهولة من عنوان URL في Java باستخدام Aspose.HTML. يتضمن البرنامج التعليمي خطوة بخطوة.
### [تحميل مستند HTML في Java – دليل كامل مع XPath و CSS](./load-html-document-java-complete-guide-with-xpath-css/)
تعلم كيفية تحميل ومعالجة مستندات HTML في Java باستخدام Aspose.HTML مع دعم XPath و CSS في دليل شامل خطوة بخطوة.
+### [عد عناصر HTML في Java باستخدام XPath](./how-to-count-html-elements-in-java-with-xpath/)
+تعلم كيفية عد عناصر HTML في مستندات Java باستخدام XPath من خلال دليل خطوة بخطوة.
### [إنشاء مستندات HTML جديدة باستخدام Aspose.HTML لـ Java](./generate-new-html-documents/)
تعرف على كيفية إنشاء مستندات HTML جديدة باستخدام Aspose.HTML for Java من خلال هذا الدليل السهل خطوة بخطوة. ابدأ في إنشاء محتوى HTML ديناميكي.
### [التعامل مع أحداث تحميل المستندات في Aspose.HTML لـ Java](./handle-document-load-events/)
@@ -80,6 +82,10 @@ url: /ar/java/creating-managing-html-documents/
تعلم كيفية حساب عدد أحرف HTML في مستندات Java باستخدام Aspose.HTML من خلال دليل شامل خطوة بخطوة.
### [استخراج النص من HTML في Java – دليل برمجة كامل](./extract-text-from-html-in-java-complete-programming-guide/)
تعلم كيفية استخراج النص من مستندات HTML باستخدام Aspose.HTML لـ Java من خلال دليل شامل خطوة بخطوة.
+### [كيفية إنشاء عنصر HTML في Java باستخدام Aspose.HTML](./how-to-create-html-element-in-java-using-aspose-html/)
+تعلم كيفية إنشاء عنصر HTML في Java باستخدام مكتبة Aspose.HTML خطوة بخطوة.
+### [كيفية اختيار العناصر حسب الفئة في Java باستخدام querySelectorAll](./how-to-select-elements-by-class-in-java-using-queryselectora/)
+تعلم كيفية اختيار عناصر HTML حسب الفئة في Java باستخدام querySelectorAll خطوة بخطوة.
{{< /blocks/products/pf/tutorial-page-section >}}
@@ -114,4 +120,4 @@ url: /ar/java/creating-managing-html-documents/
{{< /blocks/products/pf/main-container >}}
{{< /blocks/products/pf/main-wrap-class >}}
-{{< blocks/products/products-backtop-button >}}
+{{< blocks/products/products-backtop-button >}}
\ No newline at end of file
diff --git a/html/arabic/java/creating-managing-html-documents/how-to-count-html-elements-in-java-with-xpath/_index.md b/html/arabic/java/creating-managing-html-documents/how-to-count-html-elements-in-java-with-xpath/_index.md
new file mode 100644
index 0000000000..f21bf3cb74
--- /dev/null
+++ b/html/arabic/java/creating-managing-html-documents/how-to-count-html-elements-in-java-with-xpath/_index.md
@@ -0,0 +1,215 @@
+---
+category: general
+date: 2026-09-29
+description: تعلم كيفية عد عناصر HTML في جافا باستخدام Aspose.HTML وXPath. يوضح هذا
+ الدليل كيفية تحميل مستند HTML، واختيار العقد باستخدام XPath، والحصول على قائمة العقد.
+draft: false
+images:
+- PLACEHOLDER_URL/og-image.png
+keywords:
+- how to count html elements
+- select nodes with xpath
+- get node list java
+- load html document java
+- evaluate xpath in java
+language: ar
+lastmod: 2026-09-29
+og_description: كيفية عد عناصر HTML في جافا باستخدام Aspose.HTML. اتبع هذا الدرس الكامل
+ لتحميل مستند HTML، اختيار العقد باستخدام XPath، تقييم XPath في جافا، والحصول على
+ قائمة بالعقد.
+og_image_alt: Screenshot of Java code that counts HTML elements using XPath
+og_title: كيفية عد عناصر HTML في Java – دليل خطوة بخطوة
+schemas:
+- author: Aspose
+ dateModified: '2026-09-29'
+ description: Learn how to count HTML elements in Java using Aspose.HTML and XPath.
+ This guide shows how to load an HTML document, select nodes with XPath, and get
+ a node list.
+ headline: How to count HTML elements in Java with XPath
+ type: TechArticle
+- description: Learn how to count HTML elements in Java using Aspose.HTML and XPath.
+ This guide shows how to load an HTML document, select nodes with XPath, and get
+ a node list.
+ name: How to count HTML elements in Java with XPath
+ steps:
+ - name: Load the HTML document in Java
+ text: First, bring the HTML file into memory. The `HTMLDocument` class parses
+ the file and builds a DOM tree that XPath can query.
+ - name: Create and evaluate an XPath expression
+ text: Now we build an XPath that selects the elements we want to count. In this
+ example we count all `` tags whose `alt` attribute equals `"logo"`.
+ - name: Retrieve and count the node list
+ text: Finally, we count how many nodes were returned. The `NodeList` API provides
+ `getLength()` for this purpose.
+ - name: Full runnable example
+ text: Below is the complete program, including all imports and a minimal `main`
+ method. Copy it into a file named `CountHtmlElements.java`, add the Aspose.HTML
+ JAR to your project, and run it.
+ type: HowTo
+tags:
+- Java
+- XPath
+- Aspose.HTML
+title: كيفية عد عناصر HTML في جافا باستخدام XPath
+url: /ar/java/creating-managing-html-documents/how-to-count-html-elements-in-java-with-xpath/
+---
+
+{{< blocks/products/pf/main-wrap-class >}}
+{{< blocks/products/pf/main-container >}}
+{{< blocks/products/pf/tutorial-page-section >}}
+
+# كيفية عد عناصر HTML في جافا باستخدام XPath
+
+إذا كنت بحاجة إلى **how to count HTML elements** في صفحة ويب من تطبيق جافا، فإن هذا الدليل يقدم لك حلاً كاملاً وجاهزًا للتنفيذ. بحلول نهاية الجملتين الأوليين ستعرف بالضبط كيفية تحميل مستند HTML، واختيار العقد باستخدام XPath، واسترجاع قائمة العقد التي يمكنك عدّها.
+
+سنستخدم مكتبة Aspose.HTML for Java لأنها توفر واجهة برمجة تطبيقات متوافقة مع DOM ومحرك XPath قوي. يغطي الدرس كل ما تحتاجه — الاستيرادات، الكود، الشروحات، والناتج المتوقع — حتى يمكنك نسخ المثال إلى مشروعك ورؤية النتائج فورًا. على طول الطريق سنتطرق أيضًا إلى **select nodes with XPath**، **get node list Java**، **load HTML document Java**، و **evaluate XPath in Java**.
+
+## ما ستحققه
+
+* تحميل ملف HTML من نظام الملفات.
+* إنشاء تعبير XPath يستهدف عناصر محددة.
+* تقييم تعبير XPath ضد المستند.
+* استرجاع `NodeList` وعدّ عدد العناصر المطابقة الموجودة.
+
+لا تتطلب خدمات خارجية أو تكوين معقد؛ فقط ملف JAR الخاص بـ Aspose.HTML على مسار الفئة الخاص بك.
+
+---
+
+## كيفية عد عناصر HTML باستخدام XPath في جافا
+
+هذا القسم خطوة بخطوة يوضح الكود الدقيق الذي تحتاجه. كل قسم فرعي يتCorrespond إلى جزء منطقي من العملية، مما يجعل من السهل التكيّف أو التوسيع.
+
+### الخطوة 1: تحميل مستند HTML في جافا
+
+أولاً، أحضر ملف HTML إلى الذاكرة. تقوم فئة `HTMLDocument` بتحليل الملف وبناء شجرة DOM يمكن لـ XPath الاستعلام منها.
+
+```java
+import com.aspose.html.dom.HTMLDocument;
+
+// Load the HTML document from the local file system
+HTMLDocument doc = new HTMLDocument("input.html");
+```
+
+**لماذا هذا مهم:**
+تحميل المستند ينشئ تمثيل DOM، وهو مطلوب لأي تقييم XPath. إذا كان مسار الملف غير صحيح، فإن Aspose.HTML يطرح استثناء `FileNotFoundException`، لذا تحقق مرة أخرى من موقع `input.html`.
+
+### الخطوة 2: إنشاء وتقييم تعبير XPath
+
+الآن نبني تعبير XPath يختار العناصر التي نريد عدّها. في هذا المثال نعد جميع وسوم `
` التي تكون خاصية `alt` لها تساوي `"logo"`.
+
+```java
+import com.aspose.html.dom.xpath.XPathExpression;
+import com.aspose.html.dom.xpath.XPathResult;
+import com.aspose.html.dom.NodeList;
+
+// Build the XPath expression
+XPathExpression expr = doc.createXPathExpression("//img[@alt='logo']");
+
+// Evaluate the expression against the document
+NodeList nodes = (NodeList) expr.evaluate(doc, XPathResult.ANY_TYPE);
+```
+
+**لماذا هذا مهم:**
+التعبير `//img[@alt='logo']` هو طريقة مختصرة لـ **select nodes with XPath**. استدعاء `evaluate` **evaluate XPath in Java** ويعيد نتيجة عامة `XPathResult`. التحويل إلى `NodeList` يمنحنا وصولًا مباشرًا إلى مجموعة العقد المطابقة.
+
+### الخطوة 3: استرجاع وعدّ قائمة العقد
+
+أخيرًا، نعد عدد العقد التي تم إرجاعها. توفر واجهة `NodeList` الدالة `getLength()` لهذا الغرض.
+
+```java
+// Output the number of matching elements
+System.out.println("Found " + nodes.getLength() + " logo images.");
+```
+
+**لماذا هذا مهم:**
+`getLength()` هي أبسط طريقة لـ **get node list Java** والحصول على عدد. إذا لم يطابق XPath أي عناصر، فإن الطول سيكون `0`، ويمكن لتطبيقك التعامل مع ذلك بسلاسة.
+
+### مثال كامل قابل للتنفيذ
+
+فيما يلي البرنامج الكامل، بما في ذلك جميع الاستيرادات وطريقة `main` الحدّية. انسخه في ملف اسمه `CountHtmlElements.java`، أضف ملف JAR الخاص بـ Aspose.HTML إلى مشروعك، وشغّله.
+
+```java
+import com.aspose.html.dom.HTMLDocument;
+import com.aspose.html.dom.NodeList;
+import com.aspose.html.dom.xpath.XPathExpression;
+import com.aspose.html.dom.xpath.XPathResult;
+
+public class CountHtmlElements {
+ public static void main(String[] args) {
+ // Step 1: Load the HTML document
+ HTMLDocument doc = new HTMLDocument("input.html");
+
+ // Step 2: Create an XPath expression to select
elements with alt='logo'
+ XPathExpression expr = doc.createXPathExpression("//img[@alt='logo']");
+
+ // Step 3: Evaluate the expression and obtain the matching nodes
+ NodeList nodes = (NodeList) expr.evaluate(doc, XPathResult.ANY_TYPE);
+
+ // Step 4: Output the number of logo images found
+ System.out.println("Found " + nodes.getLength() + " logo images.");
+ }
+}
+```
+
+**الناتج المتوقع**
+
+إذا كان `input.html` يحتوي على ثلاثة وسوم `
`، سيطبع البرنامج:
+
+```
+Found 3 logo images.
+```
+
+إذا لم توجد مثل هذه الصور، سيطبع:
+
+```
+Found 0 logo images.
+```
+
+---
+
+## الاختلافات الشائعة وحالات الحافة
+
+| الحالة | ما الذي يجب تغييره | السبب |
+|-----------|----------------|--------|
+| عد عنصر مختلف (مثال: `
` جديد وإضافة نص إلى HTML + +إنشاء عنصر جديد مشابه لاستخدام `document.createElement` في المتصفح. + +```java +import com.aspose.html.dom.Element; + +// Create a
element +Element paragraph = doc.createElement("p"); + +// Set the text node inside the
+paragraph.setTextContent("Added by Aspose.HTML"); +``` + +`setTextContent` ينشئ تلقائيًا عقدة نصية ويربطها بالعنصر، وهي الطريقة الموصى بها **لإضافة نص إلى HTML**. كما أن هذه الطريقة تهرب الأحرف التي قد تكسر العلامات. + +## الخطوة 3: إرفاق العنصر بالجسم (body) + +الآن بعد أن أصبحت الفقرة جاهزة، تحتاج إلى وضعها داخل `
` للمستند. + +```java +// Append the new paragraph to the element +doc.getBody().appendChild(paragraph); +``` + +`doc.getBody()` تُعيد عقدة ``، و`appendChild` تُدرج العنصر `` الجديد كآخر طفل. إذا لم يحتوي المستند على عنصر `
` (وهو أمر نادر في ملف HTML مُشكل جيدًا)، فإن Aspose.HTML ينشئه تلقائيًا. + +## الخطوة 4: حفظ المستند المعدل + +أخيرًا، اكتب الـ DOM المحدث إلى القرص. + +```java +// Replace with the desired output path +String outputPath = "YOUR_DIRECTORY/output.html"; +doc.save(outputPath); +``` + +`save` تُسلسل الـ DOM، مع الحفاظ على العلامات الموجودة وإضافة الفقرة الجديدة. سيحتوي الملف الناتج `output.html` على: + +```html + + +Added by Aspose.HTML
+ + +``` + +## الشيفرة الكاملة (مثال java html) + +جمع جميع الخطوات معًا يمنحك برنامجًا مستقلًا يمكنك تشغيله فورًا. + +```java +import com.aspose.html.HTMLDocument; +import com.aspose.html.dom.Element; + +public class DomManipulation { + public static void main(String[] args) throws Exception { + // Step 1: Load the existing HTML document + HTMLDocument doc = new HTMLDocument("YOUR_DIRECTORY/input.html"); + + // Step 2: Create a newelement and set its text + Element paragraph = doc.createElement("p"); + paragraph.setTextContent("Added by Aspose.HTML"); + + // Step 3: Append the new element to the document body + doc.getBody().appendChild(paragraph); + + // Step 4: Save the modified document to a new file + doc.save("YOUR_DIRECTORY/output.html"); + } +} +``` + +### ما تقوم به الشيفرة + +| الخطوة | الإجراء | لماذا يهم | +|--------|----------|-----------| +| تحميل المستند | `new HTMLDocument(...)` | يحلل ملف HTML المصدر إلى DOM يمكنك تعديلها. | +| إنشاء العنصر | `doc.createElement("p")` | يُحاكي واجهة برمجة المتصفح، مما يضمن توافق العنصر مع معايير HTML. | +| تعيين النص | `setTextContent(...)` | يضمن الهروب الصحيح للأحرف ويتجنب إنشاء عقد نصية يدويًا. | +| إرفاقه بالجسم | `doc.getBody().appendChild(...)` | يضع العنصر الجديد في الموضع الذي سيعرضه المتصفح. | +| حفظ الملف | `doc.save(...)` | يحفظ التغييرات، مُنتجًا ملف HTML صالحًا جاهزًا للاستخدام لاحقًا. | + +## الاختلافات الشائعة وحالات الحافة + +* **إضافة عناصر متعددة** – كرّر الخطوتين 2‑3 لكل عقدة جديدة قبل استدعاء `save`. +* **الإدراج قبل عقدة محددة** – استخدم `insertBefore(newNode, referenceNode)` بدلًا من `appendChild`. +* **العمل مع المقاطع (fragments)** – `doc.createDocumentFragment()` يتيح لك بناء مجموعة من العقد وإرفاقها في عملية واحدة، ما يحسن الأداء في التحديثات الكبيرة. +* **معالجة الأحرف UTF‑8** – Aspose.HTML يكتب UTF‑8 تلقائيًا؛ فقط تأكد من أن ملف المصدر مُرمَّز بنفس الطريقة. + +## نصائح عملية + +* **معالجة المسارات** – استخدم `java.nio.file.Paths` لإنشاء مسارات ملفات مستقلة عن النظام. +* **أمان الاستثناءات** – غلف الكتلة بالكامل بعبارة try‑with‑resources إذا كنت بحاجة لإغلاق تدفقات إضافية. +* **الأداء** – للملفات HTML الضخمة جدًا، فكر في تحميل المستند باستخدام `HTMLDocument(String, LoadOptions)` حيث يمكنك تعطيل الموارد الخارجية لتسريع التحليل. + +## التحقق من النتيجة + +بعد تشغيل البرنامج، افتح `output.html` في أي متصفح. يجب أن ترى الفقرة “Added by Aspose.HTML” معروضة حيث ينتهي جسم الصفحة الأصلي. افحص مصدر الصفحة لتتأكد من وجود عنصر `
` داخل `
`. + +## الخلاصة + +أصبح بإمكانك الآن **إنشاء عنصر HTML** في جافا، **إضافة فقرة**، **إضافة نص إلى HTML**، و**إرفاق العنصر بالجسم** باستخدام Aspose.HTML. يُظهر مثال **java html** الكامل سير عمل نظيفًا وجاهزًا للإنتاج يمكنك توسيعه لتعديل أي جزء من مستند HTML. + +بعد ذلك، استكشف المواضيع ذات الصلة مثل **تعديل الخصائص**، **إزالة العقد**، أو **العمل مع أنماط CSS** لبناء خطوط معالجة HTML أكثر غنى. برمجة سعيدة! + +## ما الذي يجب أن تتعلمه بعد ذلك؟ + +تغطي الدروس التالية مواضيع ذات صلة وثيقة تبني على التقنيات التي تم توضيحها في هذا الدليل. كل مورد يتضمن شيفرات عمل كاملة مع شروحات خطوة بخطوة لمساعدتك على إتقان ميزات API إضافية واستكشاف أساليب تنفيذ بديلة في مشاريعك. + +- [إنشاء عنصر HTML جديد باستخدام جافا – دليل Aspose.HTML الكامل](/html/english/java/editing-html-documents/create-new-html-element-with-java-full-aspose-html-guide/) +- [إرفاق عنصر فرعي إلى الجسم في جافا – درس Aspose.HTML الكامل](/html/english/java/editing-html-documents/append-child-to-body-in-java-full-aspose-html-tutorial/) +- [إرفاق عنصر إلى الجسم باستخدام Aspose.HTML for Java مع مراقب تعديل DOM](/html/english/java/advanced-usage/dom-mutation-observer-observing-node-additions/) + +{{< /blocks/products/pf/tutorial-page-section >}} +{{< /blocks/products/pf/main-container >}} +{{< /blocks/products/pf/main-wrap-class >}} +{{< blocks/products/products-backtop-button >}} \ No newline at end of file diff --git a/html/arabic/java/creating-managing-html-documents/how-to-select-elements-by-class-in-java-using-queryselectora/_index.md b/html/arabic/java/creating-managing-html-documents/how-to-select-elements-by-class-in-java-using-queryselectora/_index.md new file mode 100644 index 0000000000..48f8edc311 --- /dev/null +++ b/html/arabic/java/creating-managing-html-documents/how-to-select-elements-by-class-in-java-using-queryselectora/_index.md @@ -0,0 +1,251 @@ +--- +category: general +date: 2026-09-29 +description: تعلم كيفية اختيار العناصر حسب الفئة، وقراءة HTML من ملف، وإيجاد الروابط + الخارجية في جافا. يغطي هذا الدليل خطوة بخطوة تكرار NodeList بكفاءة. +draft: false +images: +- PLACEHOLDER_URL/og-image.png +keywords: +- select elements by class +- read html from file +- find external links +- iterate nodelist java +- use queryselectorall java +language: ar +lastmod: 2026-09-29 +og_description: حدد العناصر حسب الفئة في Java، اقرأ HTML من ملف، وابحث عن الروابط + الخارجية باستخدام querySelectorAll. اتبع المثال الكامل لتكرار NodeList. +og_image_alt: Screenshot showing Java code that selects elements by class from an + HTML file +og_title: اختر العناصر حسب الفئة في جافا – دليل كامل مع querySelectorAll +schemas: +- author: Aspose + dateModified: '2026-09-29' + description: Learn how to select elements by class, read HTML from file, and find + external links in Java. This step‑by‑step guide covers iterating a NodeList efficiently. + headline: How to select elements by class in Java using querySelectorAll + type: TechArticle +- questions: + - answer: Yes. `Jsoup.parse` treats the input as a fragment and automatically adds + missing root elements, allowing selectors to work on the fragment’s body. + question: Does this work with HTML fragments that lack a `` root? + - answer: The standard Java DOM API (`org.w3c.dom`) does not include `querySelectorAll`. + Libraries such as **HTMLUnit** or **jodd-lagarto** provide similar methods. + The pattern shown here—load, select with CSS, iterate—remains the same. + question: Can I use `querySelectorAll` without jsoup? + - answer: 'After obtaining each `Element`, you can call `link.attr("href", "newUrl")` + and then write the document back to disk with `Files.writeString`. ## Conclusion + You now know how to **select elements by class**, **read HTML from file**, **find + external links**, and **iterate a NodeList in Java** using `qu' + question: What if I need to modify the links instead of just printing them? + type: FAQPage +tags: +- Java +- HTML parsing +- DOM manipulation +title: كيفية اختيار العناصر حسب الفئة في جافا باستخدام querySelectorAll +url: /ar/java/creating-managing-html-documents/how-to-select-elements-by-class-in-java-using-queryselectora/ +--- + +{{< blocks/products/pf/main-wrap-class >}} +{{< blocks/products/pf/main-container >}} +{{< blocks/products/pf/tutorial-page-section >}} + +# كيفية اختيار العناصر حسب الفئة في Java باستخدام querySelectorAll + +إذا كنت بحاجة إلى **select elements by class** أثناء معالجة ملف HTML في Java، فإن هذا الدليل يوضح لك بالضبط كيفية القيام بذلك. ستتعلم كيفية قراءة HTML من ملف، واستخدام `querySelectorAll` للعثور على الروابط الخارجية، وتكرار `NodeList` الناتج بأمان. + +التعامل مع HTML في Java غالبًا ما يبدو ثقيلًا، لكن المكتبات الحديثة توفر لك واجهة برمجة تطبيقات مختصرة تعتمد على محددات CSS. المثال أدناه يستخدم **jsoup** (الإصدار 1.17.2) لأنه ينفذ محددات على نمط `querySelectorAll` ويعيد مجموعة `Elements` تتصرف مثل `NodeList`. يمكنك تعديل نفس المنطق لتطبيقات DOM أخرى إذا لزم الأمر. + +## المتطلبات المسبقة + +* JDK 17 أو أحدث مثبت. +* Maven أو Gradle لإدارة الاعتمادات. +* إلمام أساسي بـ Java streams ونموذج DOM. + +Add jsoup to your project: + +```xml + +` 元素并向 HTML 添加文本 + +创建新元素的方式类似于在浏览器中使用 `document.createElement`。 + +```java +import com.aspose.html.dom.Element; + +// Create a
element +Element paragraph = doc.createElement("p"); + +// Set the text node inside the
+paragraph.setTextContent("Added by Aspose.HTML"); +``` + +`setTextContent` 会自动创建文本节点并将其附加到元素上,这是**向 HTML 添加文本**的推荐方式。该方法还会对可能破坏标记的字符进行转义。 + +## 第三步:将元素追加到 body + +段落准备好后,需要将其放置在文档的 `
` 中。 + +```java +// Append the new paragraph to the element +doc.getBody().appendChild(paragraph); +``` + +`doc.getBody()` 返回 `` 节点,`appendChild` 将新的 `` 插入为最后一个子节点。如果文档没有 `
` 元素(对于结构良好的 HTML 文件几乎不可能),Aspose.HTML 会自动创建一个。 + +## 第四步:保存修改后的文档 + +最后,将更新后的 DOM 写回磁盘。 + +```java +// Replace with the desired output path +String outputPath = "YOUR_DIRECTORY/output.html"; +doc.save(outputPath); +``` + +`save` 会序列化 DOM,保留已有的标记并添加新的段落。生成的 `output.html` 将包含: + +```html + + +Added by Aspose.HTML
+ + +``` + +## 完整源代码(java html 示例) + +将所有步骤组合在一起,即可得到一个可直接运行的独立程序。 + +```java +import com.aspose.html.HTMLDocument; +import com.aspose.html.dom.Element; + +public class DomManipulation { + public static void main(String[] args) throws Exception { + // Step 1: Load the existing HTML document + HTMLDocument doc = new HTMLDocument("YOUR_DIRECTORY/input.html"); + + // Step 2: Create a newelement and set its text + Element paragraph = doc.createElement("p"); + paragraph.setTextContent("Added by Aspose.HTML"); + + // Step 3: Append the new element to the document body + doc.getBody().appendChild(paragraph); + + // Step 4: Save the modified document to a new file + doc.save("YOUR_DIRECTORY/output.html"); + } +} +``` + +### 代码功能说明 + +| 步骤 | 操作 | 原因 | +|------|--------|----------------| +| 加载文档 | `new HTMLDocument(...)` | 将源 HTML 解析为可操作的 DOM。 | +| 创建元素 | `doc.createElement("p")` | 模拟浏览器 API,确保元素符合 HTML 标准。 | +| 设置文本 | `setTextContent(...)` | 保证正确转义,避免手动创建文本节点。 | +| 追加到 body | `doc.getBody().appendChild(...)` | 将新元素放置在浏览器渲染的位置。 | +| 保存文件 | `doc.save(...)` | 持久化更改,生成可供后续使用的有效 HTML 文件。 | + +## 常见变体和边缘情况 + +* **添加多个元素** – 在调用 `save` 之前,对每个新节点重复步骤 2‑3。 +* **在特定节点前插入** – 使用 `insertBefore(newNode, referenceNode)` 而不是 `appendChild`。 +* **使用文档片段** – `doc.createDocumentFragment()` 允许您一次性构建一组节点并附加,提高大规模更新的性能。 +* **处理 UTF‑8 字符** – Aspose.HTML 自动以 UTF‑8 写入;只需确保源文件采用相同编码即可。 + +## 实用技巧 + +* **路径处理** – 使用 `java.nio.file.Paths` 构建跨平台的文件路径。 +* **异常安全** – 如需关闭额外流,可将整个代码块包装在 try‑with‑resources 语句中。 +* **性能** – 对于非常大的 HTML 文件,考虑使用 `HTMLDocument(String, LoadOptions)` 加载文档,您可以禁用外部资源以加快解析速度。 + +## 验证结果 + +运行程序后,在任意浏览器中打开 `output.html`。您应当看到段落 “Added by Aspose.HTML” 出现在原始 body 结束的位置。检查页面源代码以确认 `
` 元素已存在于 `
` 中。 + +## 结论 + +现在,您已经了解如何使用 Aspose.HTML 在 Java 中**创建 HTML 元素**、**添加段落**、**向 HTML 添加文本**以及**将元素追加到 body**。完整的 **java html 示例** 展示了一个简洁、可投入生产的工作流,您可以基于它扩展以操作 HTML 文档的任意部分。 + +接下来,您可以探索诸如**修改属性**、**删除节点**或**使用 CSS 样式**等相关主题,以构建更丰富的 HTML 处理流水线。祝编码愉快! + +## 接下来您应该学习什么? + +以下教程涵盖与本指南技术紧密相关的主题,帮助您进一步学习。每个资源都提供完整的可运行代码示例和逐步解释,助您掌握更多 API 功能并在项目中探索替代实现方案。 + +- [使用 Java 创建新 HTML 元素 – 完整 Aspose.HTML 指南](/html/english/java/editing-html-documents/create-new-html-element-with-java-full-aspose-html-guide/) +- [在 Java 中将子节点追加到 body – 完整 Aspose.HTML 教程](/html/english/java/editing-html-documents/append-child-to-body-in-java-full-aspose-html-tutorial/) +- [使用 DOM 变动观察器在 Aspose.HTML for Java 中将元素追加到 Body](/html/english/java/advanced-usage/dom-mutation-observer-observing-node-additions/) + +{{< /blocks/products/pf/tutorial-page-section >}} +{{< /blocks/products/pf/main-container >}} +{{< /blocks/products/pf/main-wrap-class >}} +{{< blocks/products/products-backtop-button >}} \ No newline at end of file diff --git a/html/chinese/java/creating-managing-html-documents/how-to-select-elements-by-class-in-java-using-queryselectora/_index.md b/html/chinese/java/creating-managing-html-documents/how-to-select-elements-by-class-in-java-using-queryselectora/_index.md new file mode 100644 index 0000000000..7fe36bc17f --- /dev/null +++ b/html/chinese/java/creating-managing-html-documents/how-to-select-elements-by-class-in-java-using-queryselectora/_index.md @@ -0,0 +1,251 @@ +--- +category: general +date: 2026-09-29 +description: 学习如何按类选择元素、从文件读取HTML,并在 Java 中查找外部链接。本分步指南涵盖高效遍历 NodeList 的方法。 +draft: false +images: +- PLACEHOLDER_URL/og-image.png +keywords: +- select elements by class +- read html from file +- find external links +- iterate nodelist java +- use queryselectorall java +language: zh +lastmod: 2026-09-29 +og_description: 在 Java 中按类选择元素,从文件读取 HTML,并使用 querySelectorAll 查找外部链接。请参照完整示例遍历 NodeList。 +og_image_alt: Screenshot showing Java code that selects elements by class from an + HTML file +og_title: 在 Java 中按类选择元素 – 使用 querySelectorAll 的完整指南 +schemas: +- author: Aspose + dateModified: '2026-09-29' + description: Learn how to select elements by class, read HTML from file, and find + external links in Java. This step‑by‑step guide covers iterating a NodeList efficiently. + headline: How to select elements by class in Java using querySelectorAll + type: TechArticle +- questions: + - answer: Yes. `Jsoup.parse` treats the input as a fragment and automatically adds + missing root elements, allowing selectors to work on the fragment’s body. + question: Does this work with HTML fragments that lack a `` root? + - answer: The standard Java DOM API (`org.w3c.dom`) does not include `querySelectorAll`. + Libraries such as **HTMLUnit** or **jodd-lagarto** provide similar methods. + The pattern shown here—load, select with CSS, iterate—remains the same. + question: Can I use `querySelectorAll` without jsoup? + - answer: 'After obtaining each `Element`, you can call `link.attr("href", "newUrl")` + and then write the document back to disk with `Files.writeString`. ## Conclusion + You now know how to **select elements by class**, **read HTML from file**, **find + external links**, and **iterate a NodeList in Java** using `qu' + question: What if I need to modify the links instead of just printing them? + type: FAQPage +tags: +- Java +- HTML parsing +- DOM manipulation +title: 如何在 Java 中使用 querySelectorAll 按类选择元素 +url: /zh/java/creating-managing-html-documents/how-to-select-elements-by-class-in-java-using-queryselectora/ +--- + +{{< blocks/products/pf/main-wrap-class >}} +{{< blocks/products/pf/main-container >}} +{{< blocks/products/pf/tutorial-page-section >}} + +# 如何在 Java 中使用 querySelectorAll 按类选择元素 + +如果您需要在 Java 中处理 HTML 文件时**按类选择元素**,本指南将准确展示如何操作。您将学习如何从文件读取 HTML,使用 `querySelectorAll` 查找外部链接,并安全地遍历得到的 `NodeList`。 + +在 Java 中处理 HTML 往往感觉笨重,但现代库提供了简洁的基于 CSS 选择器的 API。下面的示例使用 **jsoup**(版本 1.17.2),因为它实现了 `querySelectorAll` 风格的选择器,并返回类似 `NodeList` 的 `Elements` 集合。您可以根据需要将相同逻辑迁移到其他 DOM 实现。 + +## 前置条件 + +在开始之前,请确保您具备: + +* 已安装 JDK 17 或更高版本。 +* 用于依赖管理的 Maven 或 Gradle。 +* 对 Java 流和 DOM 模型有基本了解。 + +将 jsoup 添加到项目中: + +```xml + +` element and add text to HTML + +Vytvoření nového elementu je podobné použití `document.createElement` v prohlížeči. + +```java +import com.aspose.html.dom.Element; + +// Create a
element +Element paragraph = doc.createElement("p"); + +// Set the text node inside the
+paragraph.setTextContent("Added by Aspose.HTML"); +``` + +`setTextContent` automaticky vytvoří textový uzel a připojí jej k elementu, což je doporučený způsob **přidání textu do HTML**. Tato metoda také escapuje znaky, které by mohly narušit značkování. + +## Step 3: Append element to body + +Nyní, když je odstavec připraven, musíte jej umístit do `
` dokumentu. + +```java +// Append the new paragraph to the element +doc.getBody().appendChild(paragraph); +``` + +`doc.getBody()` vrací uzel `` a `appendChild` vloží nový `` jako poslední dítě. Pokud dokument nemá element `
` (což je u dobře vytvořeného HTML souboru nepravděpodobné), Aspose.HTML jej vytvoří automaticky. + +## Step 4: Save the modified document + +Nakonec zapíšete aktualizovaný DOM zpět na disk. + +```java +// Replace with the desired output path +String outputPath = "YOUR_DIRECTORY/output.html"; +doc.save(outputPath); +``` + +`save` serializuje DOM, zachovává existující značky a přidává nový odstavec. Výsledný `output.html` bude obsahovat: + +```html + + +Added by Aspose.HTML
+ + +``` + +## Full source code (java html example) + +Spojením všech kroků získáte samostatný program, který můžete okamžitě spustit. + +```java +import com.aspose.html.HTMLDocument; +import com.aspose.html.dom.Element; + +public class DomManipulation { + public static void main(String[] args) throws Exception { + // Step 1: Load the existing HTML document + HTMLDocument doc = new HTMLDocument("YOUR_DIRECTORY/input.html"); + + // Step 2: Create a newelement and set its text + Element paragraph = doc.createElement("p"); + paragraph.setTextContent("Added by Aspose.HTML"); + + // Step 3: Append the new element to the document body + doc.getBody().appendChild(paragraph); + + // Step 4: Save the modified document to a new file + doc.save("YOUR_DIRECTORY/output.html"); + } +} +``` + +### What the code does + +| Krok | Akce | Proč je to důležité | +|------|------|---------------------| +| Načtení dokumentu | `new HTMLDocument(...)` | Parsuje zdrojové HTML do DOM, který můžete manipulovat. | +| Vytvoření elementu | `doc.createElement("p")` | Odpovídá API prohlížeče a zajišťuje, že element splňuje HTML standardy. | +| Nastavení textu | `setTextContent(...)` | Zaručuje správné escapování a vyhýbá se ručnímu vytváření textových uzlů. | +| Připojení k tělu | `doc.getBody().appendChild(...)` | Umístí nový element tam, kde jej prohlížeče vykreslí. | +| Uložení souboru | `doc.save(...)` | Ukládá změny a vytváří platný HTML soubor připravený k dalšímu použití. | + +## Common variations and edge cases + +* **Přidání více elementů** – opakujte kroky 2‑3 pro každý nový uzel před voláním `save`. +* **Vložení před konkrétní uzel** – použijte `insertBefore(newNode, referenceNode)` místo `appendChild`. +* **Práce s fragmenty** – `doc.createDocumentFragment()` vám umožní vytvořit skupinu uzlů a připojit je jedním operací, což zlepšuje výkon při velkých aktualizacích. +* **Zpracování UTF‑8 znaků** – Aspose.HTML automaticky zapisuje UTF‑8; jen se ujistěte, že váš zdrojový soubor je kódován stejným způsobem. + +## Practical tips + +* **Zpracování cest** – Používejte `java.nio.file.Paths` pro tvorbu platformně nezávislých cest k souborům. +* **Bezpečnost výjimek** – Zabalte celý blok do try‑with‑resources, pokud potřebujete uzavřít další streamy. +* **Výkon** – Pro velmi velké HTML soubory zvažte načtení dokumentu pomocí `HTMLDocument(String, LoadOptions)`, kde můžete vypnout externí zdroje a urychlit parsování. + +## Verify the result + +Po spuštění programu otevřete `output.html` v libovolném prohlížeči. Měli byste vidět odstavec „Added by Aspose.HTML“ zobrazený tam, kde končí původní tělo. Prohlédněte si zdroj stránky a ověřte, že element `
` je přítomen uvnitř `
`. + +## Conclusion + +Nyní víte, jak **vytvořit HTML element** v Javě, **přidat odstavec**, **přidat text do HTML** a **připojit element k tělu** pomocí Aspose.HTML. Kompletní **java html example** ukazuje čistý, produkčně připravený workflow, který můžete rozšířit pro manipulaci s libovolnou částí HTML dokumentu. + +Dále prozkoumejte související témata jako **úprava atributů**, **odstraňování uzlů** nebo **práce s CSS styly** pro vytvoření bohatších HTML zpracovatelských pipeline. Šťastné programování! + +## What Should You Learn Next? + +Následující tutoriály pokrývají úzce související témata, která staví na technikách předvedených v tomto průvodci. Každý zdroj obsahuje kompletní funkční příklady kódu s podrobným vysvětlením krok za krokem, aby vám pomohl zvládnout další funkce API a prozkoumat alternativní implementační přístupy ve vlastních projektech. + +- [Create new html element with Java – Full Aspose.HTML Guide](/html/english/java/editing-html-documents/create-new-html-element-with-java-full-aspose-html-guide/) +- [append child to body in Java – Full Aspose.HTML Tutorial](/html/english/java/editing-html-documents/append-child-to-body-in-java-full-aspose-html-tutorial/) +- [Append Element to Body with Aspose.HTML for Java using a DOM Mutation Observer](/html/english/java/advanced-usage/dom-mutation-observer-observing-node-additions/) + +{{< /blocks/products/pf/tutorial-page-section >}} +{{< /blocks/products/pf/main-container >}} +{{< /blocks/products/pf/main-wrap-class >}} +{{< blocks/products/products-backtop-button >}} \ No newline at end of file diff --git a/html/czech/java/creating-managing-html-documents/how-to-select-elements-by-class-in-java-using-queryselectora/_index.md b/html/czech/java/creating-managing-html-documents/how-to-select-elements-by-class-in-java-using-queryselectora/_index.md new file mode 100644 index 0000000000..c9be422505 --- /dev/null +++ b/html/czech/java/creating-managing-html-documents/how-to-select-elements-by-class-in-java-using-queryselectora/_index.md @@ -0,0 +1,251 @@ +--- +category: general +date: 2026-09-29 +description: Naučte se, jak vybírat prvky podle třídy, číst HTML ze souboru a najít + externí odkazy v Javě. Tento krok‑za‑krokem průvodce pokrývá efektivní iteraci NodeListu. +draft: false +images: +- PLACEHOLDER_URL/og-image.png +keywords: +- select elements by class +- read html from file +- find external links +- iterate nodelist java +- use queryselectorall java +language: cs +lastmod: 2026-09-29 +og_description: Vyberte prvky podle třídy v Javě, načtěte HTML ze souboru a najděte + externí odkazy pomocí querySelectorAll. Sledujte celý příklad pro iteraci NodeListu. +og_image_alt: Screenshot showing Java code that selects elements by class from an + HTML file +og_title: Výběr elementů podle třídy v Java – kompletní průvodce s querySelectorAll +schemas: +- author: Aspose + dateModified: '2026-09-29' + description: Learn how to select elements by class, read HTML from file, and find + external links in Java. This step‑by‑step guide covers iterating a NodeList efficiently. + headline: How to select elements by class in Java using querySelectorAll + type: TechArticle +- questions: + - answer: Yes. `Jsoup.parse` treats the input as a fragment and automatically adds + missing root elements, allowing selectors to work on the fragment’s body. + question: Does this work with HTML fragments that lack a `` root? + - answer: The standard Java DOM API (`org.w3c.dom`) does not include `querySelectorAll`. + Libraries such as **HTMLUnit** or **jodd-lagarto** provide similar methods. + The pattern shown here—load, select with CSS, iterate—remains the same. + question: Can I use `querySelectorAll` without jsoup? + - answer: 'After obtaining each `Element`, you can call `link.attr("href", "newUrl")` + and then write the document back to disk with `Files.writeString`. ## Conclusion + You now know how to **select elements by class**, **read HTML from file**, **find + external links**, and **iterate a NodeList in Java** using `qu' + question: What if I need to modify the links instead of just printing them? + type: FAQPage +tags: +- Java +- HTML parsing +- DOM manipulation +title: Jak vybrat prvky podle třídy v Javě pomocí querySelectorAll +url: /cs/java/creating-managing-html-documents/how-to-select-elements-by-class-in-java-using-queryselectora/ +--- + +{{< blocks/products/pf/main-wrap-class >}} +{{< blocks/products/pf/main-container >}} +{{< blocks/products/pf/tutorial-page-section >}} + +# Jak vybrat prvky podle třídy v Javě pomocí querySelectorAll + +Pokud potřebujete **vybrat prvky podle třídy** při zpracování HTML souboru v Javě, tento návod vám přesně ukáže, jak na to. Naučíte se načíst HTML ze souboru, použít `querySelectorAll` k nalezení externích odkazů a bezpečně iterovat výsledný `NodeList`. + +Práce s HTML v Javě často působí těžkopádně, ale moderní knihovny vám poskytují stručné API založené na CSS‑selektorech. Níže uvedený příklad používá **jsoup** (verze 1.17.2), protože implementuje selektory ve stylu `querySelectorAll` a vrací kolekci `Elements`, která se chová jako `NodeList`. Stejnou logiku můžete přizpůsobit i jiným implementacím DOM, pokud je to potřeba. + +## Požadavky + +* Nainstalovaný JDK 17 nebo novější. +* Maven nebo Gradle pro správu závislostí. +* Základní znalost Java streamů a modelu DOM. + +Add jsoup to your project: + +```xml + +`‑element en voeg tekst toe aan HTML + +Het maken van een nieuw element is vergelijkbaar met het gebruik van `document.createElement` in een browser. + +```java +import com.aspose.html.dom.Element; + +// Create a
element +Element paragraph = doc.createElement("p"); + +// Set the text node inside the
+paragraph.setTextContent("Added by Aspose.HTML"); +``` + +`setTextContent` maakt automatisch een tekstnode aan en koppelt deze aan het element, wat de aanbevolen manier is om **tekst aan HTML toe te voegen**. Deze methode escapt ook tekens die de markup zouden kunnen breken. + +## Stap 3: Voeg element toe aan body + +Nu de paragraaf klaar is, moet je deze plaatsen binnen de `
` van het document. + +```java +// Append the new paragraph to the element +doc.getBody().appendChild(paragraph); +``` + +`doc.getBody()` retourneert het ``‑node, en `appendChild` voegt de nieuwe `` toe als laatste kind. Als het document geen `
`‑element heeft (onwaarschijnlijk voor een goed gevormd HTML‑bestand), maakt Aspose.HTML er automatisch een aan. + +## Stap 4: Sla het gewijzigde document op + +Schrijf tenslotte de bijgewerkte DOM terug naar de schijf. + +```java +// Replace with the desired output path +String outputPath = "YOUR_DIRECTORY/output.html"; +doc.save(outputPath); +``` + +`save` serialiseert de DOM, behoudt de bestaande markup en voegt de nieuwe paragraaf toe. Het resulterende `output.html` zal bevatten: + +```html + + +Added by Aspose.HTML
+ + +``` + +## Volledige broncode (java html voorbeeld) + +Alle stappen samenvoegen geeft je een zelfstandige applicatie die je direct kunt uitvoeren. + +```java +import com.aspose.html.HTMLDocument; +import com.aspose.html.dom.Element; + +public class DomManipulation { + public static void main(String[] args) throws Exception { + // Step 1: Load the existing HTML document + HTMLDocument doc = new HTMLDocument("YOUR_DIRECTORY/input.html"); + + // Step 2: Create a newelement and set its text + Element paragraph = doc.createElement("p"); + paragraph.setTextContent("Added by Aspose.HTML"); + + // Step 3: Append the new element to the document body + doc.getBody().appendChild(paragraph); + + // Step 4: Save the modified document to a new file + doc.save("YOUR_DIRECTORY/output.html"); + } +} +``` + +### Wat de code doet + +| Stap | Actie | Waarom het belangrijk is | +|------|--------|--------------------------| +| Laad document | `new HTMLDocument(...)` | Parseert de bron‑HTML naar een DOM die je kunt manipuleren. | +| Maak element | `doc.createElement("p")` | Spiegelt de browser‑API, waardoor het element voldoet aan HTML‑normen. | +| Stel tekst in | `setTextContent(...)` | Zorgt voor correcte escaping en voorkomt handmatige creatie van tekst‑nodes. | +| Voeg toe aan body | `doc.getBody().appendChild(...)` | Plaatst het nieuwe element waar browsers het zullen renderen. | +| Sla bestand op | `doc.save(...)` | Bewaar de wijzigingen, waardoor een geldig HTML‑bestand ontstaat dat klaar is voor verder gebruik. | + +## Veelvoorkomende variaties en randgevallen + +* **Meerdere elementen toevoegen** – herhaal stap 2‑3 voor elk nieuw node voordat je `save` aanroept. +* **Invoegen vóór een specifiek node** – gebruik `insertBefore(newNode, referenceNode)` in plaats van `appendChild`. +* **Werken met fragmenten** – `doc.createDocumentFragment()` stelt je in staat een groep nodes te bouwen en in één bewerking toe te voegen, wat de prestaties bij grote updates verbetert. +* **Omgaan met UTF‑8‑tekens** – Aspose.HTML schrijft automatisch UTF‑8; zorg er alleen voor dat je bronbestand op dezelfde manier is gecodeerd. + +## Praktische tips + +* **Padafhandeling** – Gebruik `java.nio.file.Paths` om platformonafhankelijke bestandspaden te bouwen. +* **Uitzonderingsveiligheid** – Plaats het hele blok in een try‑with‑resources‑statement als je extra streams moet sluiten. +* **Prestaties** – Voor zeer grote HTML‑bestanden, overweeg het document te laden met `HTMLDocument(String, LoadOptions)` waarbij je externe resources kunt uitschakelen om het parsen te versnellen. + +## Verifieer het resultaat + +Na het uitvoeren van het programma, open `output.html` in een willekeurige browser. Je zou de paragraaf “Added by Aspose.HTML” moeten zien verschijnen waar de oorspronkelijke body eindigt. Inspecteer de paginabron om te bevestigen dat het `
`‑element aanwezig is binnen `
`. + +## Conclusie + +Je weet nu hoe je een **HTML-element kunt maken** in Java, een **paragraaf kunt toevoegen**, **tekst aan HTML kunt toevoegen**, en een **element aan de body kunt toevoegen** met Aspose.HTML. Het volledige **java html voorbeeld** toont een schone, productie‑klare workflow die je kunt uitbreiden om elk deel van een HTML‑document te manipuleren. + +Verken vervolgens gerelateerde onderwerpen zoals **attributen wijzigen**, **nodes verwijderen**, of **werken met CSS‑stijlen** om rijkere HTML‑verwerkingspijplijnen te bouwen. Veel programmeerplezier! + +## Wat moet je hierna leren? + +De volgende tutorials behandelen nauw verwante onderwerpen die voortbouwen op de technieken die in deze gids worden getoond. Elke bron bevat volledige werkende code‑voorbeelden met stap‑voor‑stap‑uitleg om je te helpen extra API‑functies onder de knie te krijgen en alternatieve implementatie‑benaderingen in je eigen projecten te verkennen. + +- [Create new html element with Java – Full Aspose.HTML Guide](/html/english/java/editing-html-documents/create-new-html-element-with-java-full-aspose-html-guide/) +- [append child to body in Java – Full Aspose.HTML Tutorial](/html/english/java/editing-html-documents/append-child-to-body-in-java-full-aspose-html-tutorial/) +- [Append Element to Body with Aspose.HTML for Java using a DOM Mutation Observer](/html/english/java/advanced-usage/dom-mutation-observer-observing-node-additions/) + +{{< /blocks/products/pf/tutorial-page-section >}} +{{< /blocks/products/pf/main-container >}} +{{< /blocks/products/pf/main-wrap-class >}} +{{< blocks/products/products-backtop-button >}} \ No newline at end of file diff --git a/html/dutch/java/creating-managing-html-documents/how-to-select-elements-by-class-in-java-using-queryselectora/_index.md b/html/dutch/java/creating-managing-html-documents/how-to-select-elements-by-class-in-java-using-queryselectora/_index.md new file mode 100644 index 0000000000..de5524793e --- /dev/null +++ b/html/dutch/java/creating-managing-html-documents/how-to-select-elements-by-class-in-java-using-queryselectora/_index.md @@ -0,0 +1,253 @@ +--- +category: general +date: 2026-09-29 +description: Leer hoe je elementen selecteert op basis van klasse, HTML uit een bestand + leest en externe links vindt in Java. Deze stapsgewijze gids behandelt het efficiënt + itereren over een NodeList. +draft: false +images: +- PLACEHOLDER_URL/og-image.png +keywords: +- select elements by class +- read html from file +- find external links +- iterate nodelist java +- use queryselectorall java +language: nl +lastmod: 2026-09-29 +og_description: Selecteer elementen op basis van klasse in Java, lees HTML uit een + bestand en vind externe links met querySelectorAll. Volg het volledige voorbeeld + om een NodeList te itereren. +og_image_alt: Screenshot showing Java code that selects elements by class from an + HTML file +og_title: Elementen selecteren op klasse in Java – volledige gids met querySelectorAll +schemas: +- author: Aspose + dateModified: '2026-09-29' + description: Learn how to select elements by class, read HTML from file, and find + external links in Java. This step‑by‑step guide covers iterating a NodeList efficiently. + headline: How to select elements by class in Java using querySelectorAll + type: TechArticle +- questions: + - answer: Yes. `Jsoup.parse` treats the input as a fragment and automatically adds + missing root elements, allowing selectors to work on the fragment’s body. + question: Does this work with HTML fragments that lack a `` root? + - answer: The standard Java DOM API (`org.w3c.dom`) does not include `querySelectorAll`. + Libraries such as **HTMLUnit** or **jodd-lagarto** provide similar methods. + The pattern shown here—load, select with CSS, iterate—remains the same. + question: Can I use `querySelectorAll` without jsoup? + - answer: 'After obtaining each `Element`, you can call `link.attr("href", "newUrl")` + and then write the document back to disk with `Files.writeString`. ## Conclusion + You now know how to **select elements by class**, **read HTML from file**, **find + external links**, and **iterate a NodeList in Java** using `qu' + question: What if I need to modify the links instead of just printing them? + type: FAQPage +tags: +- Java +- HTML parsing +- DOM manipulation +title: Hoe elementen selecteren op basis van klasse in Java met querySelectorAll +url: /nl/java/creating-managing-html-documents/how-to-select-elements-by-class-in-java-using-queryselectora/ +--- + +{{< blocks/products/pf/main-wrap-class >}} +{{< blocks/products/pf/main-container >}} +{{< blocks/products/pf/tutorial-page-section >}} + +# Hoe selecteer je elementen op class in Java met querySelectorAll + +Als je **elementen op class** moet selecteren tijdens het verwerken van een HTML‑bestand in Java, laat deze gids je precies zien hoe je dat doet. Je leert HTML uit een bestand te lezen, `querySelectorAll` te gebruiken om externe links te vinden, en de resulterende `NodeList` veilig te itereren. + +Werken met HTML in Java voelt vaak zwaar, maar moderne bibliotheken bieden je een beknopte, CSS‑selector‑gebaseerde API. Het voorbeeld hieronder gebruikt **jsoup** (versie 1.17.2) omdat het `querySelectorAll`‑achtige selectors implementeert en een `Elements`‑collectie retourneert die zich gedraagt als een `NodeList`. Je kunt dezelfde logica aanpassen voor andere DOM‑implementaties indien nodig. + +## Vereisten + +* JDK 17 of nieuwer geïnstalleerd. +* Maven of Gradle voor afhankelijkheidsbeheer. +* Basiskennis van Java‑streams en het DOM‑model. + +Voeg jsoup toe aan je project: + +```xml + +` element and add text to HTML + +Creating a new element is similar to using `document.createElement` in a browser. + +```java +import com.aspose.html.dom.Element; + +// Create a
element +Element paragraph = doc.createElement("p"); + +// Set the text node inside the
+paragraph.setTextContent("Added by Aspose.HTML"); +``` + +`setTextContent` automatically creates a text node and attaches it to the element, which is the recommended way to **add text to HTML**. This method also escapes characters that could break the markup. + +## Step 3: Append element to body + +Now that the paragraph is ready, you need to place it inside the document’s `
`. + +```java +// Append the new paragraph to the element +doc.getBody().appendChild(paragraph); +``` + +`doc.getBody()` returns the `` node, and `appendChild` inserts the new `` as the last child. If the document has no `
` element (unlikely for a well‑formed HTML file), Aspose.HTML creates one automatically. + +## Step 4: Save the modified document + +Finally, write the updated DOM back to disk. + +```java +// Replace with the desired output path +String outputPath = "YOUR_DIRECTORY/output.html"; +doc.save(outputPath); +``` + +`save` serializes the DOM, preserving existing markup and adding the new paragraph. The resulting `output.html` will contain: + +```html + + +Added by Aspose.HTML
+ + +``` + +## Full source code (java html example) + +Putting all steps together gives you a self‑contained program you can run immediately. + +```java +import com.aspose.html.HTMLDocument; +import com.aspose.html.dom.Element; + +public class DomManipulation { + public static void main(String[] args) throws Exception { + // Step 1: Load the existing HTML document + HTMLDocument doc = new HTMLDocument("YOUR_DIRECTORY/input.html"); + + // Step 2: Create a newelement and set its text + Element paragraph = doc.createElement("p"); + paragraph.setTextContent("Added by Aspose.HTML"); + + // Step 3: Append the new element to the document body + doc.getBody().appendChild(paragraph); + + // Step 4: Save the modified document to a new file + doc.save("YOUR_DIRECTORY/output.html"); + } +} +``` + +### What the code does + +| Step | Action | Why it matters | +|------|--------|----------------| +| Load document | `new HTMLDocument(...)` | Parses the source HTML into a DOM you can manipulate. | +| Create element | `doc.createElement("p")` | Mirrors the browser API, ensuring the element follows HTML standards. | +| Set text | `setTextContent(...)` | Guarantees proper escaping and avoids manual text‑node creation. | +| Append to body | `doc.getBody().appendChild(...)` | Places the new element where browsers will render it. | +| Save file | `doc.save(...)` | Persists changes, producing a valid HTML file ready for further use. | + +## Common variations and edge cases + +* **Adding multiple elements** – repeat steps 2‑3 for each new node before calling `save`. +* **Inserting before a specific node** – use `insertBefore(newNode, referenceNode)` instead of `appendChild`. +* **Working with fragments** – `doc.createDocumentFragment()` lets you build a group of nodes and attach them in one operation, which improves performance for large updates. +* **Handling UTF‑8 characters** – Aspose.HTML automatically writes UTF‑8; just ensure your source file is encoded the same way. + +## Practical tips + +* **Path handling** – Use `java.nio.file.Paths` to build platform‑independent file paths. +* **Exception safety** – Wrap the whole block in a try‑with‑resources statement if you need to close additional streams. +* **Performance** – For very large HTML files, consider loading the document with `HTMLDocument(String, LoadOptions)` where you can disable external resources to speed up parsing. + +## Verify the result + +After running the program, open `output.html` in any browser. You should see the paragraph “Added by Aspose.HTML” displayed where the original body ends. Inspect the page source to confirm that the `
` element is present inside `
`. + +## Conclusion + +You now know how to **create HTML element** in Java, **add a paragraph**, **add text to HTML**, and **append element to body** using Aspose.HTML. The complete **java html example** demonstrates a clean, production‑ready workflow that you can extend to manipulate any part of an HTML document. + +Next, explore related topics such as **modifying attributes**, **removing nodes**, or **working with CSS styles** to build richer HTML processing pipelines. Happy coding! + + +## What Should You Learn Next? + + +The following tutorials cover closely related topics that build on the techniques demonstrated in this guide. Each resource includes complete working code examples with step-by-step explanations to help you master additional API features and explore alternative implementation approaches in your own projects. + +- [Create new html element with Java – Full Aspose.HTML Guide](/html/english/java/editing-html-documents/create-new-html-element-with-java-full-aspose-html-guide/) +- [append child to body in Java – Full Aspose.HTML Tutorial](/html/english/java/editing-html-documents/append-child-to-body-in-java-full-aspose-html-tutorial/) +- [Append Element to Body with Aspose.HTML for Java using a DOM Mutation Observer](/html/english/java/advanced-usage/dom-mutation-observer-observing-node-additions/) + +{{< /blocks/products/pf/tutorial-page-section >}} +{{< /blocks/products/pf/main-container >}} +{{< /blocks/products/pf/main-wrap-class >}} +{{< blocks/products/products-backtop-button >}} \ No newline at end of file diff --git a/html/english/java/creating-managing-html-documents/how-to-create-html-element-in-java-using-aspose-html/og-image.png b/html/english/java/creating-managing-html-documents/how-to-create-html-element-in-java-using-aspose-html/og-image.png new file mode 100644 index 0000000000..c6bcb637a9 Binary files /dev/null and b/html/english/java/creating-managing-html-documents/how-to-create-html-element-in-java-using-aspose-html/og-image.png differ diff --git a/html/english/java/creating-managing-html-documents/how-to-select-elements-by-class-in-java-using-queryselectora/_index.md b/html/english/java/creating-managing-html-documents/how-to-select-elements-by-class-in-java-using-queryselectora/_index.md new file mode 100644 index 0000000000..c8396270c5 --- /dev/null +++ b/html/english/java/creating-managing-html-documents/how-to-select-elements-by-class-in-java-using-queryselectora/_index.md @@ -0,0 +1,255 @@ +--- +category: general +date: 2026-09-29 +description: Learn how to select elements by class, read HTML from file, and find + external links in Java. This step‑by‑step guide covers iterating a NodeList efficiently. +draft: false +images: +- PLACEHOLDER_URL/og-image.png +keywords: +- select elements by class +- read html from file +- find external links +- iterate nodelist java +- use queryselectorall java +language: en +lastmod: 2026-09-29 +og_description: Select elements by class in Java, read HTML from file, and find external + links using querySelectorAll. Follow the full example to iterate a NodeList. +og_image_alt: Screenshot showing Java code that selects elements by class from an + HTML file +og_title: Select elements by class in Java – complete guide with querySelectorAll +schemas: +- author: Aspose + dateModified: '2026-09-29' + description: Learn how to select elements by class, read HTML from file, and find + external links in Java. This step‑by‑step guide covers iterating a NodeList efficiently. + headline: How to select elements by class in Java using querySelectorAll + type: TechArticle +- questions: + - answer: Yes. `Jsoup.parse` treats the input as a fragment and automatically adds + missing root elements, allowing selectors to work on the fragment’s body. + question: Does this work with HTML fragments that lack a `` root? + - answer: The standard Java DOM API (`org.w3c.dom`) does not include `querySelectorAll`. + Libraries such as **HTMLUnit** or **jodd-lagarto** provide similar methods. + The pattern shown here—load, select with CSS, iterate—remains the same. + question: Can I use `querySelectorAll` without jsoup? + - answer: 'After obtaining each `Element`, you can call `link.attr("href", "newUrl")` + and then write the document back to disk with `Files.writeString`. ## Conclusion + You now know how to **select elements by class**, **read HTML from file**, **find + external links**, and **iterate a NodeList in Java** using `qu' + question: What if I need to modify the links instead of just printing them? + type: FAQPage +tags: +- Java +- HTML parsing +- DOM manipulation +title: How to select elements by class in Java using querySelectorAll +url: /java/creating-managing-html-documents/how-to-select-elements-by-class-in-java-using-queryselectora/ +--- + +{{< blocks/products/pf/main-wrap-class >}} +{{< blocks/products/pf/main-container >}} +{{< blocks/products/pf/tutorial-page-section >}} + +# How to select elements by class in Java using querySelectorAll + +If you need to **select elements by class** while processing an HTML file in Java, this guide shows you exactly how to do it. You’ll learn to read HTML from file, use `querySelectorAll` to find external links, and iterate the resulting `NodeList` safely. + +Working with HTML in Java often feels heavyweight, but modern libraries give you a concise, CSS‑selector‑based API. The example below uses **jsoup** (version 1.17.2) because it implements `querySelectorAll`‑style selectors and returns a `Elements` collection that behaves like a `NodeList`. You can adapt the same logic to other DOM implementations if needed. + +## Prerequisites + +Before you start, make sure you have: + +* JDK 17 or newer installed. +* Maven or Gradle for dependency management. +* Basic familiarity with Java streams and the DOM model. + +Add jsoup to your project: + +```xml + +` et ajouter du texte au HTML + +Créer un nouvel élément est similaire à l'utilisation de `document.createElement` dans un navigateur. + +```java +import com.aspose.html.dom.Element; + +// Create a
element +Element paragraph = doc.createElement("p"); + +// Set the text node inside the
+paragraph.setTextContent("Added by Aspose.HTML"); +``` + +`setTextContent` crée automatiquement un nœud texte et l'attache à l'élément, ce qui est la méthode recommandée pour **ajouter du texte au HTML**. Cette méthode échappe également les caractères qui pourraient casser le balisage. + +## Étape 3 : Ajouter l'élément au corps + +Maintenant que le paragraphe est prêt, vous devez le placer à l'intérieur du `
` du document. + +```java +// Append the new paragraph to the element +doc.getBody().appendChild(paragraph); +``` + +`doc.getBody()` renvoie le nœud ``, et `appendChild` insère le nouveau `` comme dernier enfant. Si le document ne possède pas d'élément `
` (peu probable pour un fichier HTML bien formé), Aspose.HTML en crée automatiquement un. + +## Étape 4 : Enregistrer le document modifié + +Enfin, écrivez le DOM mis à jour sur le disque. + +```java +// Replace with the desired output path +String outputPath = "YOUR_DIRECTORY/output.html"; +doc.save(outputPath); +``` + +`save` sérialise le DOM, préservant le balisage existant et ajoutant le nouveau paragraphe. Le `output.html` résultant contiendra : + +```html + + +Added by Aspose.HTML
+ + +``` + +## Code source complet (exemple java html) + +Assembler toutes les étapes vous fournit un programme autonome que vous pouvez exécuter immédiatement. + +```java +import com.aspose.html.HTMLDocument; +import com.aspose.html.dom.Element; + +public class DomManipulation { + public static void main(String[] args) throws Exception { + // Step 1: Load the existing HTML document + HTMLDocument doc = new HTMLDocument("YOUR_DIRECTORY/input.html"); + + // Step 2: Create a newelement and set its text + Element paragraph = doc.createElement("p"); + paragraph.setTextContent("Added by Aspose.HTML"); + + // Step 3: Append the new element to the document body + doc.getBody().appendChild(paragraph); + + // Step 4: Save the modified document to a new file + doc.save("YOUR_DIRECTORY/output.html"); + } +} +``` + +### Ce que fait le code + +| Étape | Action | Pourquoi c'est important | +|------|--------|---------------------------| +| Charger le document | `new HTMLDocument(...)` | Analyse le HTML source en un DOM que vous pouvez manipuler. | +| Créer l'élément | `doc.createElement("p")` | Reflète l'API du navigateur, garantissant que l'élément respecte les normes HTML. | +| Définir le texte | `setTextContent(...)` | Garantit un échappement correct et évite la création manuelle de nœuds texte. | +| Ajouter au corps | `doc.getBody().appendChild(...)` | Place le nouvel élément à l'endroit où les navigateurs le rendront. | +| Enregistrer le fichier | `doc.save(...)` | Persiste les modifications, produisant un fichier HTML valide prêt à être utilisé. | + +## Variantes courantes et cas limites + +* **Ajouter plusieurs éléments** – répétez les étapes 2‑3 pour chaque nouveau nœud avant d'appeler `save`. +* **Insérer avant un nœud spécifique** – utilisez `insertBefore(newNode, referenceNode)` au lieu de `appendChild`. +* **Travailler avec des fragments** – `doc.createDocumentFragment()` vous permet de construire un groupe de nœuds et de les attacher en une seule opération, ce qui améliore les performances pour de grandes mises à jour. +* **Gestion des caractères UTF‑8** – Aspose.HTML écrit automatiquement en UTF‑8 ; assurez‑vous simplement que votre fichier source est encodé de la même manière. + +## Conseils pratiques + +* **Gestion des chemins** – Utilisez `java.nio.file.Paths` pour construire des chemins de fichiers indépendants de la plateforme. +* **Sécurité des exceptions** – Encapsulez tout le bloc dans une instruction try‑with‑resources si vous devez fermer des flux supplémentaires. +* **Performance** – Pour des fichiers HTML très volumineux, envisagez de charger le document avec `HTMLDocument(String, LoadOptions)` où vous pouvez désactiver les ressources externes afin d'accélérer l'analyse. + +## Vérifier le résultat + +Après avoir exécuté le programme, ouvrez `output.html` dans n'importe quel navigateur. Vous devriez voir le paragraphe « Added by Aspose.HTML » affiché à l'endroit où le corps original se termine. Inspectez le code source de la page pour confirmer que l'élément `
` est présent à l'intérieur de `
`. + +## Conclusion + +Vous savez maintenant comment **créer un élément HTML** en Java, **ajouter un paragraphe**, **ajouter du texte au HTML**, et **ajouter l'élément au corps** en utilisant Aspose.HTML. L'**exemple java html** complet montre un flux de travail propre et prêt pour la production que vous pouvez étendre pour manipuler n'importe quelle partie d'un document HTML. + +Ensuite, explorez des sujets connexes tels que **modifier les attributs**, **supprimer des nœuds**, ou **travailler avec les styles CSS** pour créer des pipelines de traitement HTML plus riches. Bon codage ! + +## Que devriez‑vous apprendre ensuite ? + +Les tutoriels suivants couvrent des sujets étroitement liés qui s'appuient sur les techniques démontrées dans ce guide. Chaque ressource comprend des exemples de code complets et fonctionnels avec des explications étape par étape pour vous aider à maîtriser des fonctionnalités d'API supplémentaires et explorer des approches d'implémentation alternatives dans vos propres projets. + +- [Créer un nouvel élément html avec Java – Guide complet Aspose.HTML](/html/english/java/editing-html-documents/create-new-html-element-with-java-full-aspose-html-guide/) +- [ajouter un enfant au corps en Java – Tutoriel complet Aspose.HTML](/html/english/java/editing-html-documents/append-child-to-body-in-java-full-aspose-html-tutorial/) +- [Ajouter un élément au corps avec Aspose.HTML pour Java en utilisant un observateur de mutation DOM](/html/english/java/advanced-usage/dom-mutation-observer-observing-node-additions/) + +{{< /blocks/products/pf/tutorial-page-section >}} +{{< /blocks/products/pf/main-container >}} +{{< /blocks/products/pf/main-wrap-class >}} +{{< blocks/products/products-backtop-button >}} \ No newline at end of file diff --git a/html/french/java/creating-managing-html-documents/how-to-select-elements-by-class-in-java-using-queryselectora/_index.md b/html/french/java/creating-managing-html-documents/how-to-select-elements-by-class-in-java-using-queryselectora/_index.md new file mode 100644 index 0000000000..b095fd4db1 --- /dev/null +++ b/html/french/java/creating-managing-html-documents/how-to-select-elements-by-class-in-java-using-queryselectora/_index.md @@ -0,0 +1,253 @@ +--- +category: general +date: 2026-09-29 +description: Apprenez à sélectionner des éléments par classe, lire du HTML depuis + un fichier et trouver les liens externes en Java. Ce guide étape par étape couvre + l'itération efficace d’une NodeList. +draft: false +images: +- PLACEHOLDER_URL/og-image.png +keywords: +- select elements by class +- read html from file +- find external links +- iterate nodelist java +- use queryselectorall java +language: fr +lastmod: 2026-09-29 +og_description: Sélectionner des éléments par classe en Java, lire le HTML depuis + un fichier et trouver les liens externes avec querySelectorAll. Suivez l’exemple + complet pour parcourir un NodeList. +og_image_alt: Screenshot showing Java code that selects elements by class from an + HTML file +og_title: Sélectionner des éléments par classe en Java – guide complet avec querySelectorAll +schemas: +- author: Aspose + dateModified: '2026-09-29' + description: Learn how to select elements by class, read HTML from file, and find + external links in Java. This step‑by‑step guide covers iterating a NodeList efficiently. + headline: How to select elements by class in Java using querySelectorAll + type: TechArticle +- questions: + - answer: Yes. `Jsoup.parse` treats the input as a fragment and automatically adds + missing root elements, allowing selectors to work on the fragment’s body. + question: Does this work with HTML fragments that lack a `` root? + - answer: The standard Java DOM API (`org.w3c.dom`) does not include `querySelectorAll`. + Libraries such as **HTMLUnit** or **jodd-lagarto** provide similar methods. + The pattern shown here—load, select with CSS, iterate—remains the same. + question: Can I use `querySelectorAll` without jsoup? + - answer: 'After obtaining each `Element`, you can call `link.attr("href", "newUrl")` + and then write the document back to disk with `Files.writeString`. ## Conclusion + You now know how to **select elements by class**, **read HTML from file**, **find + external links**, and **iterate a NodeList in Java** using `qu' + question: What if I need to modify the links instead of just printing them? + type: FAQPage +tags: +- Java +- HTML parsing +- DOM manipulation +title: Comment sélectionner des éléments par classe en Java avec querySelectorAll +url: /fr/java/creating-managing-html-documents/how-to-select-elements-by-class-in-java-using-queryselectora/ +--- + +{{< blocks/products/pf/main-wrap-class >}} +{{< blocks/products/pf/main-container >}} +{{< blocks/products/pf/tutorial-page-section >}} + +# Comment sélectionner des éléments par classe en Java avec querySelectorAll + +Si vous devez **sélectionner des éléments par classe** lors du traitement d'un fichier HTML en Java, ce guide vous montre exactement comment le faire. Vous apprendrez à lire le HTML depuis un fichier, à utiliser `querySelectorAll` pour trouver les liens externes, et à parcourir en toute sécurité le `NodeList` résultant. + +Travailler avec du HTML en Java semble souvent lourd, mais les bibliothèques modernes vous offrent une API concise basée sur les sélecteurs CSS. L'exemple ci‑dessous utilise **jsoup** (version 1.17.2) car il implémente des sélecteurs de type `querySelectorAll` et renvoie une collection `Elements` qui se comporte comme un `NodeList`. Vous pouvez adapter la même logique à d'autres implémentations DOM si nécessaire. + +## Prérequis + +* JDK 17 ou version supérieure installé. +* Maven ou Gradle pour la gestion des dépendances. +* Familiarité de base avec les streams Java et le modèle DOM. + +Ajoutez jsoup à votre projet : + +```xml + +`‑Element erstellen und Text zu HTML hinzufügen + +Ein neues Element zu erzeugen ist ähnlich wie die Verwendung von `document.createElement` im Browser. + +```java +import com.aspose.html.dom.Element; + +// Create a
element +Element paragraph = doc.createElement("p"); + +// Set the text node inside the
+paragraph.setTextContent("Added by Aspose.HTML"); +``` + +`setTextContent` erzeugt automatisch einen Text‑Knoten und hängt ihn an das Element an – dies ist der empfohlene Weg, **Text zu HTML hinzuzufügen**. Diese Methode escaped außerdem Zeichen, die das Markup beschädigen könnten. + +## Schritt 3: Element an den Body anhängen + +Jetzt, wo der Absatz fertig ist, müssen Sie ihn innerhalb des `
` des Dokuments platzieren. + +```java +// Append the new paragraph to the element +doc.getBody().appendChild(paragraph); +``` + +`doc.getBody()` liefert den ``‑Knoten, und `appendChild` fügt das neue `` als letztes Kind ein. Sollte das Dokument kein `
`‑Element besitzen (unwahrscheinlich bei einer wohlgeformten HTML‑Datei), erzeugt Aspose.HTML automatisch eines. + +## Schritt 4: Das modifizierte Dokument speichern + +Zum Schluss schreiben Sie das aktualisierte DOM zurück auf die Festplatte. + +```java +// Replace with the desired output path +String outputPath = "YOUR_DIRECTORY/output.html"; +doc.save(outputPath); +``` + +`save` serialisiert das DOM, bewahrt das vorhandene Markup und fügt den neuen Absatz hinzu. Die resultierende `output.html` wird folgendes enthalten: + +```html + + +Added by Aspose.HTML
+ + +``` + +## Vollständiger Quellcode (java html Beispiel) + +Alle Schritte zusammen ergeben ein eigenständiges Programm, das Sie sofort ausführen können. + +```java +import com.aspose.html.HTMLDocument; +import com.aspose.html.dom.Element; + +public class DomManipulation { + public static void main(String[] args) throws Exception { + // Step 1: Load the existing HTML document + HTMLDocument doc = new HTMLDocument("YOUR_DIRECTORY/input.html"); + + // Step 2: Create a newelement and set its text + Element paragraph = doc.createElement("p"); + paragraph.setTextContent("Added by Aspose.HTML"); + + // Step 3: Append the new element to the document body + doc.getBody().appendChild(paragraph); + + // Step 4: Save the modified document to a new file + doc.save("YOUR_DIRECTORY/output.html"); + } +} +``` + +### Was der Code macht + +| Schritt | Aktion | Warum das wichtig ist | +|---------|--------|-----------------------| +| Dokument laden | `new HTMLDocument(...)` | Parsed das Quell‑HTML in ein DOM, das Sie manipulieren können. | +| Element erstellen | `doc.createElement("p")` | Entspricht der Browser‑API und stellt sicher, dass das Element den HTML‑Standards folgt. | +| Text setzen | `setTextContent(...)` | Garantiert korrektes Escaping und vermeidet die manuelle Erstellung von Text‑Knoten. | +| An Body anhängen | `doc.getBody().appendChild(...)` | Platziert das neue Element dort, wo Browser es rendern. | +| Datei speichern | `doc.save(...)` | Persistiert die Änderungen und erzeugt eine gültige HTML‑Datei für die weitere Verwendung. | + +## Häufige Varianten und Sonderfälle + +* **Mehrere Elemente hinzufügen** – Wiederholen Sie die Schritte 2‑3 für jeden neuen Knoten, bevor Sie `save` aufrufen. +* **Vor einem bestimmten Knoten einfügen** – Verwenden Sie `insertBefore(newNode, referenceNode)` anstelle von `appendChild`. +* **Mit Fragmenten arbeiten** – `doc.createDocumentFragment()` ermöglicht das Erstellen einer Gruppe von Knoten, die in einem Vorgang angehängt werden, was die Performance bei großen Updates verbessert. +* **UTF‑8‑Zeichen behandeln** – Aspose.HTML schreibt automatisch UTF‑8; stellen Sie nur sicher, dass Ihre Quelldatei ebenfalls so kodiert ist. + +## Praktische Tipps + +* **Pfad‑Handling** – Nutzen Sie `java.nio.file.Paths`, um plattformunabhängige Dateipfade zu erstellen. +* **Ausnahmesicherheit** – Packen Sie den gesamten Block in ein try‑with‑resources‑Statement, wenn Sie zusätzliche Streams schließen müssen. +* **Performance** – Bei sehr großen HTML‑Dateien sollten Sie das Dokument mit `HTMLDocument(String, LoadOptions)` laden, wobei Sie externe Ressourcen deaktivieren können, um das Parsen zu beschleunigen. + +## Ergebnis überprüfen + +Nach dem Ausführen des Programms öffnen Sie `output.html` in einem beliebigen Browser. Sie sollten den Absatz „Added by Aspose.HTML“ sehen, der dort erscheint, wo der ursprüngliche Body endet. Untersuchen Sie den Quellcode der Seite, um zu bestätigen, dass das `
`‑Element innerhalb von `
` vorhanden ist. + +## Fazit + +Sie wissen jetzt, wie man **HTML‑Elemente** in Java **erstellt**, **einen Absatz hinzufügt**, **Text zu HTML hinzufügt** und **ein Element an den Body anhängt** mit Aspose.HTML. Das vollständige **java html Beispiel** demonstriert einen sauberen, produktionsreifen Workflow, den Sie erweitern können, um jeden Teil eines HTML‑Dokuments zu manipulieren. + +Als Nächstes können Sie verwandte Themen wie **Attribute ändern**, **Knoten entfernen** oder **mit CSS‑Stilen arbeiten** erkunden, um umfangreichere HTML‑Verarbeitungspipelines zu bauen. Viel Spaß beim Coden! + +## Was Sie als Nächstes lernen sollten + + +Die folgenden Tutorials behandeln eng verwandte Themen, die auf den in diesem Leitfaden gezeigten Techniken aufbauen. Jede Ressource enthält vollständige, funktionierende Code‑Beispiele mit Schritt‑für‑Schritt‑Erklärungen, um Ihnen zu helfen, weitere API‑Funktionen zu meistern und alternative Implementierungsansätze in Ihren eigenen Projekten zu erkunden. + +- [Create new html element with Java – Full Aspose.HTML Guide](/html/english/java/editing-html-documents/create-new-html-element-with-java-full-aspose-html-guide/) +- [append child to body in Java – Full Aspose.HTML Tutorial](/html/english/java/editing-html-documents/append-child-to-body-in-java-full-aspose-html-tutorial/) +- [Append Element to Body with Aspose.HTML for Java using a DOM Mutation Observer](/html/english/java/advanced-usage/dom-mutation-observer-observing-node-additions/) + +{{< /blocks/products/pf/tutorial-page-section >}} +{{< /blocks/products/pf/main-container >}} +{{< /blocks/products/pf/main-wrap-class >}} +{{< blocks/products/products-backtop-button >}} \ No newline at end of file diff --git a/html/german/java/creating-managing-html-documents/how-to-select-elements-by-class-in-java-using-queryselectora/_index.md b/html/german/java/creating-managing-html-documents/how-to-select-elements-by-class-in-java-using-queryselectora/_index.md new file mode 100644 index 0000000000..cd56435eda --- /dev/null +++ b/html/german/java/creating-managing-html-documents/how-to-select-elements-by-class-in-java-using-queryselectora/_index.md @@ -0,0 +1,255 @@ +--- +category: general +date: 2026-09-29 +description: Lernen Sie, wie man Elemente nach Klasse auswählt, HTML aus einer Datei + liest und externe Links in Java findet. Diese Schritt‑für‑Schritt‑Anleitung behandelt + das effiziente Durchlaufen einer NodeList. +draft: false +images: +- PLACEHOLDER_URL/og-image.png +keywords: +- select elements by class +- read html from file +- find external links +- iterate nodelist java +- use queryselectorall java +language: de +lastmod: 2026-09-29 +og_description: Wählen Sie Elemente nach Klasse in Java aus, lesen Sie HTML aus einer + Datei und finden Sie externe Links mit querySelectorAll. Folgen Sie dem vollständigen + Beispiel, um eine NodeList zu iterieren. +og_image_alt: Screenshot showing Java code that selects elements by class from an + HTML file +og_title: Elemente nach Klasse in Java auswählen – vollständiger Leitfaden mit querySelectorAll +schemas: +- author: Aspose + dateModified: '2026-09-29' + description: Learn how to select elements by class, read HTML from file, and find + external links in Java. This step‑by‑step guide covers iterating a NodeList efficiently. + headline: How to select elements by class in Java using querySelectorAll + type: TechArticle +- questions: + - answer: Yes. `Jsoup.parse` treats the input as a fragment and automatically adds + missing root elements, allowing selectors to work on the fragment’s body. + question: Does this work with HTML fragments that lack a `` root? + - answer: The standard Java DOM API (`org.w3c.dom`) does not include `querySelectorAll`. + Libraries such as **HTMLUnit** or **jodd-lagarto** provide similar methods. + The pattern shown here—load, select with CSS, iterate—remains the same. + question: Can I use `querySelectorAll` without jsoup? + - answer: 'After obtaining each `Element`, you can call `link.attr("href", "newUrl")` + and then write the document back to disk with `Files.writeString`. ## Conclusion + You now know how to **select elements by class**, **read HTML from file**, **find + external links**, and **iterate a NodeList in Java** using `qu' + question: What if I need to modify the links instead of just printing them? + type: FAQPage +tags: +- Java +- HTML parsing +- DOM manipulation +title: Wie man in Java Elemente per Klasse mit querySelectorAll auswählt +url: /de/java/creating-managing-html-documents/how-to-select-elements-by-class-in-java-using-queryselectora/ +--- + +{{< blocks/products/pf/main-wrap-class >}} +{{< blocks/products/pf/main-container >}} +{{< blocks/products/pf/tutorial-page-section >}} + +# Wie man Elemente nach Klasse in Java mit querySelectorAll auswählt + +Wenn Sie **Elemente nach Klasse** beim Verarbeiten einer HTML‑Datei in Java auswählen müssen, zeigt Ihnen diese Anleitung genau, wie das geht. Sie lernen, HTML aus einer Datei zu lesen, `querySelectorAll` zu verwenden, um externe Links zu finden, und die resultierende `NodeList` sicher zu iterieren. + +Die Arbeit mit HTML in Java wirkt oft schwerfällig, aber moderne Bibliotheken bieten Ihnen eine kompakte, CSS‑Selektor‑basierte API. Das nachfolgende Beispiel verwendet **jsoup** (Version 1.17.2), weil es `querySelectorAll`‑artige Selektoren implementiert und eine `Elements`‑Sammlung zurückgibt, die sich wie eine `NodeList` verhält. Sie können dieselbe Logik bei Bedarf an andere DOM‑Implementierungen anpassen. + +## Voraussetzungen + +Bevor Sie beginnen, stellen Sie sicher, dass Sie folgendes haben: + +* JDK 17 oder neuer installiert. +* Maven oder Gradle für das Abhängigkeitsmanagement. +* Grundlegende Kenntnisse von Java‑Streams und dem DOM‑Modell. + +Fügen Sie jsoup zu Ihrem Projekt hinzu: + +```xml + +` και προσθήκη κειμένου στο HTML + +Η δημιουργία ενός νέου στοιχείου είναι παρόμοια με τη χρήση του `document.createElement` σε πρόγραμμα περιήγησης. + +```java +import com.aspose.html.dom.Element; + +// Create a
element +Element paragraph = doc.createElement("p"); + +// Set the text node inside the
+paragraph.setTextContent("Added by Aspose.HTML"); +``` + +Η μέθοδος `setTextContent` δημιουργεί αυτόματα έναν κόμβο κειμένου και τον συνδέει με το στοιχείο, που είναι ο προτεινόμενος τρόπος για **προσθήκη κειμένου στο HTML**. Αυτή η μέθοδος επίσης διαφύγει χαρακτήρες που θα μπορούσαν να σπάσουν τη σήμανση. + +## Βήμα 3: Προσάρτηση του στοιχείου στο body + +Τώρα που η παράγραφος είναι έτοιμη, πρέπει να την τοποθετήσετε μέσα στο `
` του εγγράφου. + +```java +// Append the new paragraph to the element +doc.getBody().appendChild(paragraph); +``` + +Η `doc.getBody()` επιστρέφει τον κόμβο ``, και η `appendChild` εισάγει το νέο `` ως το τελευταίο παιδί. Αν το έγγραφο δεν έχει στοιχείο `
` (σπάνιο για ένα καλά δομημένο αρχείο HTML), το Aspose.HTML δημιουργεί αυτόματα ένα. + +## Βήμα 4: Αποθήκευση του τροποποιημένου εγγράφου + +Τέλος, γράψτε το ενημερωμένο DOM πίσω στο δίσκο. + +```java +// Replace with the desired output path +String outputPath = "YOUR_DIRECTORY/output.html"; +doc.save(outputPath); +``` + +Η `save` σειριοποιεί το DOM, διατηρώντας την υπάρχουσα σήμανση και προσθέτοντας τη νέα παράγραφο. Το αποτέλεσμα `output.html` θα περιέχει: + +```html + + +Added by Aspose.HTML
+ + +``` + +## Πλήρης κώδικας (java html example) + +Η συνένωση όλων των βημάτων δημιουργεί ένα αυτόνομο πρόγραμμα που μπορείτε να εκτελέσετε αμέσως. + +```java +import com.aspose.html.HTMLDocument; +import com.aspose.html.dom.Element; + +public class DomManipulation { + public static void main(String[] args) throws Exception { + // Step 1: Load the existing HTML document + HTMLDocument doc = new HTMLDocument("YOUR_DIRECTORY/input.html"); + + // Step 2: Create a newelement and set its text + Element paragraph = doc.createElement("p"); + paragraph.setTextContent("Added by Aspose.HTML"); + + // Step 3: Append the new element to the document body + doc.getBody().appendChild(paragraph); + + // Step 4: Save the modified document to a new file + doc.save("YOUR_DIRECTORY/output.html"); + } +} +``` + +### Τι κάνει ο κώδικας + +| Βήμα | Ενέργεια | Γιατί είναι σημαντικό | +|------|----------|-----------------------| +| Φόρτωση εγγράφου | `new HTMLDocument(...)` | Αναλύει το πηγαίο HTML σε DOM που μπορείτε να διαχειριστείτε. | +| Δημιουργία στοιχείου | `doc.createElement("p")` | Αντιγράφει το API του προγράμματος περιήγησης, εξασφαλίζοντας ότι το στοιχείο ακολουθεί τα πρότυπα HTML. | +| Ορισμός κειμένου | `setTextContent(...)` | Εγγυάται σωστή διαφυγή και αποφεύγει τη χειροκίνητη δημιουργία κόμβου κειμένου. | +| Προσάρτηση στο body | `doc.getBody().appendChild(...)` | Τοποθετεί το νέο στοιχείο εκεί που οι browsers θα το αποδώσουν. | +| Αποθήκευση αρχείου | `doc.save(...)` | Διατηρεί τις αλλαγές, παράγοντας ένα έγκυρο αρχείο HTML έτοιμο για περαιτέρω χρήση. | + +## Συνηθισμένες παραλλαγές και ειδικές περιπτώσεις + +* **Προσθήκη πολλαπλών στοιχείων** – επαναλάβετε τα βήματα 2‑3 για κάθε νέο κόμβο πριν καλέσετε `save`. +* **Εισαγωγή πριν από συγκεκριμένο κόμβο** – χρησιμοποιήστε `insertBefore(newNode, referenceNode)` αντί για `appendChild`. +* **Εργασία με τμήματα** – η `doc.createDocumentFragment()` σας επιτρέπει να δημιουργήσετε μια ομάδα κόμβων και να τους συνδέσετε με μία ενέργεια, βελτιώνοντας την απόδοση για μεγάλες ενημερώσεις. +* **Διαχείριση χαρακτήρων UTF‑8** – το Aspose.HTML γράφει αυτόματα σε UTF‑8· απλώς βεβαιωθείτε ότι το αρχείο πηγής είναι κωδικοποιημένο με τον ίδιο τρόπο. + +## Πρακτικές συμβουλές + +* **Διαχείριση διαδρομών** – Χρησιμοποιήστε `java.nio.file.Paths` για να δημιουργήσετε ανεξάρτητες από την πλατφόρμα διαδρομές αρχείων. +* **Ασφάλεια εξαιρέσεων** – Τυλίξτε ολόκληρο το τμήμα σε δήλωση try‑with‑resources αν χρειάζεται να κλείσετε επιπλέον ροές. +* **Απόδοση** – Για πολύ μεγάλα αρχεία HTML, σκεφτείτε να φορτώσετε το έγγραφο με `HTMLDocument(String, LoadOptions)` όπου μπορείτε να απενεργοποιήσετε εξωτερικούς πόρους για ταχύτερη ανάλυση. + +## Επαλήθευση του αποτελέσματος + +Αφού τρέξετε το πρόγραμμα, ανοίξτε το `output.html` σε οποιοδήποτε πρόγραμμα περιήγησης. Θα πρέπει να δείτε την παράγραφο “Added by Aspose.HTML” να εμφανίζεται στο τέλος του αρχικού σώματος. Εξετάστε την πηγή της σελίδας για να επιβεβαιώσετε ότι το στοιχείο `
` υπάρχει μέσα στο `
`. + +## Συμπέρασμα + +Τώρα ξέρετε πώς να **δημιουργήσετε στοιχείο HTML** σε Java, **να προσθέσετε μια παράγραφο**, **να προσθέσετε κείμενο στο HTML**, και **να προσαρτήσετε το στοιχείο στο body** χρησιμοποιώντας το Aspose.HTML. Το πλήρες **java html example** δείχνει μια καθαρή, έτοιμη για παραγωγή ροή εργασίας που μπορείτε να επεκτείνετε για να διαχειριστείτε οποιοδήποτε τμήμα ενός εγγράφου HTML. + +Στη συνέχεια, εξερευνήστε σχετικά θέματα όπως **τροποποίηση χαρακτηριστικών**, **αφαίρεση κόμβων**, ή **εργασία με στυλ CSS** για να δημιουργήσετε πιο πλούσιες αλυσίδες επεξεργασίας HTML. Καλό κώδικα! + +## Τι πρέπει να μάθετε στη συνέχεια; + +Τα παρακάτω tutorials καλύπτουν στενά συναφή θέματα που βασίζονται στις τεχνικές που παρουσιάζονται σε αυτόν τον οδηγό. Κάθε πόρος περιλαμβάνει πλήρη λειτουργικά παραδείγματα κώδικα με βήμα‑βήμα εξηγήσεις για να σας βοηθήσει να κυριαρχήσετε επιπλέον δυνατότητες του API και να εξερευνήσετε εναλλακτικές προσεγγίσεις υλοποίησης στα δικά σας έργα. + +- [Create new html element with Java – Full Aspose.HTML Guide](/html/english/java/editing-html-documents/create-new-html-element-with-java-full-aspose-html-guide/) +- [append child to body in Java – Full Aspose.HTML Tutorial](/html/english/java/editing-html-documents/append-child-to-body-in-java-full-aspose-html-tutorial/) +- [Append Element to Body with Aspose.HTML for Java using a DOM Mutation Observer](/html/english/java/advanced-usage/dom-mutation-observer-observing-node-additions/) + +{{< /blocks/products/pf/tutorial-page-section >}} +{{< /blocks/products/pf/main-container >}} +{{< /blocks/products/pf/main-wrap-class >}} +{{< blocks/products/products-backtop-button >}} \ No newline at end of file diff --git a/html/greek/java/creating-managing-html-documents/how-to-select-elements-by-class-in-java-using-queryselectora/_index.md b/html/greek/java/creating-managing-html-documents/how-to-select-elements-by-class-in-java-using-queryselectora/_index.md new file mode 100644 index 0000000000..b9202ac09c --- /dev/null +++ b/html/greek/java/creating-managing-html-documents/how-to-select-elements-by-class-in-java-using-queryselectora/_index.md @@ -0,0 +1,253 @@ +--- +category: general +date: 2026-09-29 +description: Μάθετε πώς να επιλέγετε στοιχεία κατά κλάση, να διαβάζετε HTML από αρχείο + και να εντοπίζετε εξωτερικούς συνδέσμους σε Java. Αυτός ο οδηγός βήμα‑βήμα καλύπτει + την αποδοτική επανάληψη μιας λίστας κόμβων (NodeList). +draft: false +images: +- PLACEHOLDER_URL/og-image.png +keywords: +- select elements by class +- read html from file +- find external links +- iterate nodelist java +- use queryselectorall java +language: el +lastmod: 2026-09-29 +og_description: Επιλέξτε στοιχεία κατά κλάση στην Java, διαβάστε HTML από αρχείο και + βρείτε εξωτερικούς συνδέσμους χρησιμοποιώντας querySelectorAll. Ακολουθήστε το πλήρες + παράδειγμα για να επαναλάβετε ένα NodeList. +og_image_alt: Screenshot showing Java code that selects elements by class from an + HTML file +og_title: Επιλογή στοιχείων κατά κλάση στη Java – πλήρης οδηγός με querySelectorAll +schemas: +- author: Aspose + dateModified: '2026-09-29' + description: Learn how to select elements by class, read HTML from file, and find + external links in Java. This step‑by‑step guide covers iterating a NodeList efficiently. + headline: How to select elements by class in Java using querySelectorAll + type: TechArticle +- questions: + - answer: Yes. `Jsoup.parse` treats the input as a fragment and automatically adds + missing root elements, allowing selectors to work on the fragment’s body. + question: Does this work with HTML fragments that lack a `` root? + - answer: The standard Java DOM API (`org.w3c.dom`) does not include `querySelectorAll`. + Libraries such as **HTMLUnit** or **jodd-lagarto** provide similar methods. + The pattern shown here—load, select with CSS, iterate—remains the same. + question: Can I use `querySelectorAll` without jsoup? + - answer: 'After obtaining each `Element`, you can call `link.attr("href", "newUrl")` + and then write the document back to disk with `Files.writeString`. ## Conclusion + You now know how to **select elements by class**, **read HTML from file**, **find + external links**, and **iterate a NodeList in Java** using `qu' + question: What if I need to modify the links instead of just printing them? + type: FAQPage +tags: +- Java +- HTML parsing +- DOM manipulation +title: Πώς να επιλέξετε στοιχεία κατά κλάση στη Java χρησιμοποιώντας το querySelectorAll +url: /el/java/creating-managing-html-documents/how-to-select-elements-by-class-in-java-using-queryselectora/ +--- + +{{< blocks/products/pf/main-wrap-class >}} +{{< blocks/products/pf/main-container >}} +{{< blocks/products/pf/tutorial-page-section >}} + +# Πώς να επιλέξετε στοιχεία κατά κλάση σε Java χρησιμοποιώντας querySelectorAll + +Αν χρειάζεστε **select elements by class** ενώ επεξεργάζεστε ένα αρχείο HTML σε Java, αυτός ο οδηγός σας δείχνει ακριβώς πώς να το κάνετε. Θα μάθετε να διαβάζετε HTML από αρχείο, να χρησιμοποιείτε `querySelectorAll` για να βρείτε εξωτερικούς συνδέσμους και να επαναλαμβάνετε με ασφάλεια το προκύπτον `NodeList`. + +Η εργασία με HTML σε Java συχνά φαίνεται βαριά, αλλά οι σύγχρονες βιβλιοθήκες σας παρέχουν ένα σύντομο, API βασισμένο σε CSS‑selector. Το παρακάτω παράδειγμα χρησιμοποιεί **jsoup** (έκδοση 1.17.2) επειδή υλοποιεί επιλογείς σε στυλ `querySelectorAll` και επιστρέφει μια συλλογή `Elements` που συμπεριφέρεται όπως ένα `NodeList`. Μπορείτε να προσαρμόσετε την ίδια λογική σε άλλες υλοποιήσεις DOM αν χρειαστεί. + +## Προαπαιτούμενα + +* JDK 17 ή νεότερο εγκατεστημένο. +* Maven ή Gradle για διαχείριση εξαρτήσεων. +* Βασική εξοικείωση με Java streams και το μοντέλο DOM. + +Προσθέστε το jsoup στο έργο σας: + +```xml + +` तत्व बनाएं और HTML में टेक्स्ट जोड़ें + +नया तत्व बनाना ब्राउज़र में `document.createElement` का उपयोग करने जैसा ही है। + +```java +import com.aspose.html.dom.Element; + +// Create a
element +Element paragraph = doc.createElement("p"); + +// Set the text node inside the
+paragraph.setTextContent("Added by Aspose.HTML"); +``` + +`setTextContent` स्वचालित रूप से एक टेक्स्ट नोड बनाता है और उसे तत्व से जोड़ता है, जो **HTML में टेक्स्ट जोड़ने** का अनुशंसित तरीका है। यह मेथड उन अक्षरों को भी एस्केप करता है जो मार्कअप को तोड़ सकते हैं। + +## चरण 3: तत्व को बॉडी में जोड़ें + +अब जब पैराग्राफ तैयार है, आपको इसे दस्तावेज़ के `
` के भीतर रखना होगा। + +```java +// Append the new paragraph to the element +doc.getBody().appendChild(paragraph); +``` + +`doc.getBody()` `` नोड लौटाता है, और `appendChild` नया `` को अंतिम चाइल्ड के रूप में जोड़ता है। यदि दस्तावेज़ में `
` तत्व नहीं है (एक सही‑फ़ॉर्मेटेड HTML फ़ाइल के लिए असामान्य), तो Aspose.HTML इसे स्वचालित रूप से बनाता है। + +## चरण 4: संशोधित दस्तावेज़ को सहेजें + +अंत में, अपडेटेड DOM को डिस्क पर वापस लिखें। + +```java +// Replace with the desired output path +String outputPath = "YOUR_DIRECTORY/output.html"; +doc.save(outputPath); +``` + +`save` DOM को सीरियलाइज़ करता है, मौजूदा मार्कअप को संरक्षित रखता है और नया पैराग्राफ जोड़ता है। परिणामी `output.html` में यह होगा: + +```html + + +Added by Aspose.HTML
+ + +``` + +## पूर्ण स्रोत कोड (java html उदाहरण) + +सभी चरणों को मिलाकर आपको एक स्व-निहित प्रोग्राम मिलता है जिसे आप तुरंत चला सकते हैं। + +```java +import com.aspose.html.HTMLDocument; +import com.aspose.html.dom.Element; + +public class DomManipulation { + public static void main(String[] args) throws Exception { + // Step 1: Load the existing HTML document + HTMLDocument doc = new HTMLDocument("YOUR_DIRECTORY/input.html"); + + // Step 2: Create a newelement and set its text + Element paragraph = doc.createElement("p"); + paragraph.setTextContent("Added by Aspose.HTML"); + + // Step 3: Append the new element to the document body + doc.getBody().appendChild(paragraph); + + // Step 4: Save the modified document to a new file + doc.save("YOUR_DIRECTORY/output.html"); + } +} +``` + +### कोड क्या करता है + +| चरण | क्रिया | क्यों महत्वपूर्ण है | +|------|--------|-------------------| +| दस्तावेज़ लोड करें | `new HTMLDocument(...)` | स्रोत HTML को DOM में पार्स करता है जिसे आप संशोधित कर सकते हैं। | +| तत्व बनाएं | `doc.createElement("p")` | ब्राउज़र API की नकल करता है, जिससे तत्व HTML मानकों के अनुसार बनता है। | +| टेक्स्ट सेट करें | `setTextContent(...)` | सही एस्केपिंग सुनिश्चित करता है और मैन्युअल टेक्स्ट‑नोड निर्माण से बचाता है। | +| बॉडी में जोड़ें | `doc.getBody().appendChild(...)` | नया तत्व उस स्थान पर रखता है जहाँ ब्राउज़र इसे रेंडर करेंगे। | +| फ़ाइल सहेजें | `doc.save(...)` | परिवर्तनों को स्थायी करता है, एक वैध HTML फ़ाइल बनाता है जो आगे उपयोग के लिए तैयार है। | + +## सामान्य विविधताएँ और किनारे के मामले + +* **एकाधिक तत्व जोड़ना** – `save` कॉल करने से पहले प्रत्येक नए नोड के लिए चरण 2‑3 दोहराएँ। +* **किसी विशिष्ट नोड से पहले डालना** – `appendChild` के बजाय `insertBefore(newNode, referenceNode)` उपयोग करें। +* **फ़्रैगमेंट के साथ काम करना** – `doc.createDocumentFragment()` आपको नोड्स का समूह बनाने और एक ही ऑपरेशन में जोड़ने देता है, जो बड़े अपडेट्स के लिए प्रदर्शन सुधारता है। +* **UTF‑8 अक्षरों को संभालना** – Aspose.HTML स्वचालित रूप से UTF‑8 लिखता है; बस सुनिश्चित करें कि आपका स्रोत फ़ाइल भी उसी तरह एन्कोडेड हो। + +## व्यावहारिक टिप्स + +* **पाथ हैंडलिंग** – प्लेटफ़ॉर्म‑स्वतंत्र फ़ाइल पाथ बनाने के लिए `java.nio.file.Paths` का उपयोग करें। +* **अपवाद सुरक्षा** – यदि आपको अतिरिक्त स्ट्रीम्स बंद करने की आवश्यकता है तो पूरे ब्लॉक को try‑with‑resources स्टेटमेंट में रखें। +* **प्रदर्शन** – बहुत बड़े HTML फ़ाइलों के लिए, `HTMLDocument(String, LoadOptions)` के साथ दस्तावेज़ लोड करने पर विचार करें जहाँ आप बाहरी संसाधनों को निष्क्रिय करके पार्सिंग को तेज़ कर सकते हैं। + +## परिणाम की पुष्टि करें + +प्रोग्राम चलाने के बाद, किसी भी ब्राउज़र में `output.html` खोलें। आपको पैराग्राफ “Added by Aspose.HTML” मूल बॉडी के अंत में दिखना चाहिए। पेज स्रोत की जाँच करें ताकि पुष्टि हो सके कि `
` तत्व `
` के भीतर मौजूद है। + +## निष्कर्ष + +अब आप जानते हैं कि जावा में **HTML तत्व कैसे बनाएं**, **पैराग्राफ जोड़ें**, **HTML में टेक्स्ट जोड़ें**, और Aspose.HTML का उपयोग करके **तत्व को बॉडी में जोड़ें**। पूर्ण **java html उदाहरण** एक साफ़, प्रोडक्शन‑रेडी वर्कफ़्लो दर्शाता है जिसे आप HTML दस्तावेज़ के किसी भी भाग को संशोधित करने के लिए विस्तारित कर सकते हैं। + +अगला, **एट्रिब्यूट्स संशोधित करना**, **नोड्स हटाना**, या **CSS स्टाइल्स के साथ काम करना** जैसे संबंधित विषयों का अन्वेषण करें ताकि अधिक समृद्ध HTML प्रोसेसिंग पाइपलाइन बना सकें। कोडिंग का आनंद लें! + +## अगला आपको क्या सीखना चाहिए? + +निम्नलिखित ट्यूटोरियल्स उन निकट संबंधित विषयों को कवर करते हैं जो इस गाइड में प्रदर्शित तकनीकों पर आधारित हैं। प्रत्येक संसाधन में पूर्ण कार्यशील कोड उदाहरण और चरण‑दर‑चरण व्याख्याएँ शामिल हैं जो आपको अतिरिक्त API सुविधाओं में निपुण बनने और अपने प्रोजेक्ट में वैकल्पिक कार्यान्वयन दृष्टिकोणों का अन्वेषण करने में मदद करती हैं। + +- [जावा के साथ नया HTML तत्व बनाएं – पूर्ण Aspose.HTML गाइड](/html/english/java/editing-html-documents/create-new-html-element-with-java-full-aspose-html-guide/) +- [जावा में बॉडी में चाइल्ड जोड़ें – पूर्ण Aspose.HTML ट्यूटोरियल](/html/english/java/editing-html-documents/append-child-to-body-in-java-full-aspose-html-tutorial/) +- [Aspose.HTML for Java के साथ DOM म्यूटेशन ऑब्ज़र्वर का उपयोग करके बॉडी में तत्व जोड़ें](/html/english/java/advanced-usage/dom-mutation-observer-observing-node-additions/) + +{{< /blocks/products/pf/tutorial-page-section >}} +{{< /blocks/products/pf/main-container >}} +{{< /blocks/products/pf/main-wrap-class >}} +{{< blocks/products/products-backtop-button >}} \ No newline at end of file diff --git a/html/hindi/java/creating-managing-html-documents/how-to-select-elements-by-class-in-java-using-queryselectora/_index.md b/html/hindi/java/creating-managing-html-documents/how-to-select-elements-by-class-in-java-using-queryselectora/_index.md new file mode 100644 index 0000000000..fa97563ade --- /dev/null +++ b/html/hindi/java/creating-managing-html-documents/how-to-select-elements-by-class-in-java-using-queryselectora/_index.md @@ -0,0 +1,253 @@ +--- +category: general +date: 2026-09-29 +description: जावा में क्लास द्वारा तत्वों का चयन करना, फ़ाइल से HTML पढ़ना, और बाहरी + लिंक ढूँढ़ना सीखें। यह चरण‑दर‑चरण गाइड NodeList को कुशलतापूर्वक इटररेट करने को कवर + करता है। +draft: false +images: +- PLACEHOLDER_URL/og-image.png +keywords: +- select elements by class +- read html from file +- find external links +- iterate nodelist java +- use queryselectorall java +language: hi +lastmod: 2026-09-29 +og_description: Java में क्लास द्वारा तत्वों का चयन करें, फ़ाइल से HTML पढ़ें, और + querySelectorAll का उपयोग करके बाहरी लिंक खोजें। NodeList को इटररेट करने के लिए + पूर्ण उदाहरण का पालन करें। +og_image_alt: Screenshot showing Java code that selects elements by class from an + HTML file +og_title: जावा में क्लास द्वारा तत्व चुनें – querySelectorAll के साथ पूर्ण गाइड +schemas: +- author: Aspose + dateModified: '2026-09-29' + description: Learn how to select elements by class, read HTML from file, and find + external links in Java. This step‑by‑step guide covers iterating a NodeList efficiently. + headline: How to select elements by class in Java using querySelectorAll + type: TechArticle +- questions: + - answer: Yes. `Jsoup.parse` treats the input as a fragment and automatically adds + missing root elements, allowing selectors to work on the fragment’s body. + question: Does this work with HTML fragments that lack a `` root? + - answer: The standard Java DOM API (`org.w3c.dom`) does not include `querySelectorAll`. + Libraries such as **HTMLUnit** or **jodd-lagarto** provide similar methods. + The pattern shown here—load, select with CSS, iterate—remains the same. + question: Can I use `querySelectorAll` without jsoup? + - answer: 'After obtaining each `Element`, you can call `link.attr("href", "newUrl")` + and then write the document back to disk with `Files.writeString`. ## Conclusion + You now know how to **select elements by class**, **read HTML from file**, **find + external links**, and **iterate a NodeList in Java** using `qu' + question: What if I need to modify the links instead of just printing them? + type: FAQPage +tags: +- Java +- HTML parsing +- DOM manipulation +title: जावा में querySelectorAll का उपयोग करके क्लास द्वारा तत्वों का चयन कैसे करें +url: /hi/java/creating-managing-html-documents/how-to-select-elements-by-class-in-java-using-queryselectora/ +--- + +{{< blocks/products/pf/main-wrap-class >}} +{{< blocks/products/pf/main-container >}} +{{< blocks/products/pf/tutorial-page-section >}} + +# Java में querySelectorAll का उपयोग करके क्लास द्वारा एलिमेंट्स का चयन कैसे करें + +यदि आपको Java में HTML फ़ाइल को प्रोसेस करते समय **क्लास द्वारा एलिमेंट्स का चयन** करने की आवश्यकता है, तो यह गाइड आपको ठीक-ठीक बताता है कि इसे कैसे करें। आप फ़ाइल से HTML पढ़ना, `querySelectorAll` का उपयोग करके बाहरी लिंक ढूँढना, और प्राप्त `NodeList` को सुरक्षित रूप से इटरेट करना सीखेंगे। + +Java में HTML के साथ काम करना अक्सर भारी महसूस होता है, लेकिन आधुनिक लाइब्रेरीज़ आपको एक संक्षिप्त, CSS‑सेलेक्टर‑आधारित API देती हैं। नीचे दिया गया उदाहरण **jsoup** (संस्करण 1.17.2) का उपयोग करता है क्योंकि यह `querySelectorAll`‑शैली के सेलेक्टर लागू करता है और एक `Elements` कलेक्शन लौटाता है जो `NodeList` की तरह व्यवहार करता है। आप आवश्यकता पड़ने पर इसी लॉजिक को अन्य DOM इम्प्लीमेंटेशन में भी अनुकूलित कर सकते हैं। + +## आवश्यकताएँ + +* JDK 17 या नया स्थापित हो। +* निर्भरता प्रबंधन के लिए Maven या Gradle। +* Java streams और DOM मॉडल की बुनियादी समझ। + +अपने प्रोजेक्ट में jsoup जोड़ें: + +```xml + +` 元素並將文字加入 HTML + +建立新元素的方式類似於在瀏覽器中使用 `document.createElement`。 + +```java +import com.aspose.html.dom.Element; + +// Create a
element +Element paragraph = doc.createElement("p"); + +// Set the text node inside the
+paragraph.setTextContent("Added by Aspose.HTML"); +``` + +`setTextContent` 會自動建立文字節點並附加到元素上,這是 **add text to HTML** 的建議做法。此方法同時會轉義可能破壞標記的字元。 + +## 步驟 3:將元素附加至 body + +現在段落已準備好,您需要將它放入文件的 `
` 中。 + +```java +// Append the new paragraph to the element +doc.getBody().appendChild(paragraph); +``` + +`doc.getBody()` 會回傳 `` 節點,而 `appendChild` 則將新的 `` 插入為最後一個子節點。若文件沒有 `
` 元素(對於結構良好的 HTML 檔案而言不太可能),Aspose.HTML 會自動建立一個。 + +## 步驟 4:儲存已修改的文件 + +最後,將更新後的 DOM 寫回磁碟。 + +```java +// Replace with the desired output path +String outputPath = "YOUR_DIRECTORY/output.html"; +doc.save(outputPath); +``` + +`save` 會序列化 DOM,保留既有標記並加入新的段落。產生的 `output.html` 會包含以下內容: + +```html + + +Added by Aspose.HTML
+ + +``` + +## 完整原始碼(java html 範例) + +將所有步驟整合在一起,即可得到一個可立即執行的獨立程式。 + +```java +import com.aspose.html.HTMLDocument; +import com.aspose.html.dom.Element; + +public class DomManipulation { + public static void main(String[] args) throws Exception { + // Step 1: Load the existing HTML document + HTMLDocument doc = new HTMLDocument("YOUR_DIRECTORY/input.html"); + + // Step 2: Create a newelement and set its text + Element paragraph = doc.createElement("p"); + paragraph.setTextContent("Added by Aspose.HTML"); + + // Step 3: Append the new element to the document body + doc.getBody().appendChild(paragraph); + + // Step 4: Save the modified document to a new file + doc.save("YOUR_DIRECTORY/output.html"); + } +} +``` + +### 程式碼說明 + +| 步驟 | 操作 | 為何重要 | +|------|--------|----------------| +| Load document | `new HTMLDocument(...)` | 解析來源 HTML 成為可操作的 DOM。 | +| Create element | `doc.createElement("p")` | 鏡像瀏覽器 API,確保元素符合 HTML 標準。 | +| Set text | `setTextContent(...)` | 保證正確轉義,避免手動建立文字節點。 | +| Append to body | `doc.getBody().appendChild(...)` | 將新元素放置於瀏覽器會渲染的位置。 | +| Save file | `doc.save(...)` | 持久化變更,產生可供後續使用的有效 HTML 檔案。 | + +## 常見變形與邊緣情況 + +* **Adding multiple elements** – 在呼叫 `save` 之前,對每個新節點重複步驟 2‑3。 +* **Inserting before a specific node** – 使用 `insertBefore(newNode, referenceNode)` 取代 `appendChild`。 +* **Working with fragments** – `doc.createDocumentFragment()` 讓您一次建立多個節點並在單一操作中附加,對大型更新可提升效能。 +* **Handling UTF‑8 characters** – Aspose.HTML 會自動以 UTF‑8 寫入;只需確保來源檔案的編碼相同即可。 + +## 實用技巧 + +* **Path handling** – 使用 `java.nio.file.Paths` 來建立跨平台的檔案路徑。 +* **Exception safety** – 若需關閉其他串流,可將整段程式碼包在 try‑with‑resources 陳述式中。 +* **Performance** – 對於非常大的 HTML 檔案,可考慮使用 `HTMLDocument(String, LoadOptions)` 載入文件,並在其中停用外部資源以加速解析。 + +## 驗證結果 + +執行程式後,於任意瀏覽器開啟 `output.html`。您應該會看到段落「Added by Aspose.HTML」出現在原始 body 結尾處。檢查頁面原始碼以確認 `
` 元素已存在於 `
` 內。 + +## 結論 + +您現在已了解如何在 Java 中使用 Aspose.HTML **create HTML element**、**add a paragraph**、**add text to HTML**,以及 **append element to body**。完整的 **java html example** 展示了一個乾淨且可投入生產環境的工作流程,您可以將其擴展以操作 HTML 文件的任何部分。 + +接下來,您可以探索相關主題,如 **modifying attributes**、**removing nodes** 或 **working with CSS styles**,以建立更完整的 HTML 處理管線。祝開發愉快! + +## 接下來該學什麼? + +以下教學涵蓋與本指南緊密相關的主題,並以此為基礎。每個資源皆提供完整可執行的程式碼範例與逐步說明,協助您精通更多 API 功能,並在自己的專案中探索替代實作方式。 + +- [使用 Java 建立新 HTML 元素 – 完整 Aspose.HTML 指南](/html/english/java/editing-html-documents/create-new-html-element-with-java-full-aspose-html-guide/) +- [在 Java 中將子節點附加至 body – 完整 Aspose.HTML 教程](/html/english/java/editing-html-documents/append-child-to-body-in-java-full-aspose-html-tutorial/) +- [使用 DOM Mutation Observer 於 Aspose.HTML for Java 將元素附加至 Body](/html/english/java/advanced-usage/dom-mutation-observer-observing-node-additions/) + +{{< /blocks/products/pf/tutorial-page-section >}} +{{< /blocks/products/pf/main-container >}} +{{< /blocks/products/pf/main-wrap-class >}} +{{< blocks/products/products-backtop-button >}} \ No newline at end of file diff --git a/html/hongkong/java/creating-managing-html-documents/how-to-select-elements-by-class-in-java-using-queryselectora/_index.md b/html/hongkong/java/creating-managing-html-documents/how-to-select-elements-by-class-in-java-using-queryselectora/_index.md new file mode 100644 index 0000000000..f6ffe2cc96 --- /dev/null +++ b/html/hongkong/java/creating-managing-html-documents/how-to-select-elements-by-class-in-java-using-queryselectora/_index.md @@ -0,0 +1,252 @@ +--- +category: general +date: 2026-09-29 +description: 學習如何按類別選取元素、從檔案讀取 HTML,並在 Java 中找出外部連結。此逐步指南涵蓋高效遍歷 NodeList。 +draft: false +images: +- PLACEHOLDER_URL/og-image.png +keywords: +- select elements by class +- read html from file +- find external links +- iterate nodelist java +- use queryselectorall java +language: zh-hant +lastmod: 2026-09-29 +og_description: 在 Java 中按類別選取元素,從檔案讀取 HTML,並使用 querySelectorAll 找出外部連結。請參考完整範例以遍歷 + NodeList。 +og_image_alt: Screenshot showing Java code that selects elements by class from an + HTML file +og_title: 在 Java 中按類別選取元素 – 使用 querySelectorAll 完整指南 +schemas: +- author: Aspose + dateModified: '2026-09-29' + description: Learn how to select elements by class, read HTML from file, and find + external links in Java. This step‑by‑step guide covers iterating a NodeList efficiently. + headline: How to select elements by class in Java using querySelectorAll + type: TechArticle +- questions: + - answer: Yes. `Jsoup.parse` treats the input as a fragment and automatically adds + missing root elements, allowing selectors to work on the fragment’s body. + question: Does this work with HTML fragments that lack a `` root? + - answer: The standard Java DOM API (`org.w3c.dom`) does not include `querySelectorAll`. + Libraries such as **HTMLUnit** or **jodd-lagarto** provide similar methods. + The pattern shown here—load, select with CSS, iterate—remains the same. + question: Can I use `querySelectorAll` without jsoup? + - answer: 'After obtaining each `Element`, you can call `link.attr("href", "newUrl")` + and then write the document back to disk with `Files.writeString`. ## Conclusion + You now know how to **select elements by class**, **read HTML from file**, **find + external links**, and **iterate a NodeList in Java** using `qu' + question: What if I need to modify the links instead of just printing them? + type: FAQPage +tags: +- Java +- HTML parsing +- DOM manipulation +title: 如何在 Java 中使用 querySelectorAll 依類別選取元素 +url: /zh-hant/java/creating-managing-html-documents/how-to-select-elements-by-class-in-java-using-queryselectora/ +--- + +{{< blocks/products/pf/main-wrap-class >}} +{{< blocks/products/pf/main-container >}} +{{< blocks/products/pf/tutorial-page-section >}} + +# 如何在 Java 中使用 querySelectorAll 按類別選取元素 + +如果您需要在 Java 中處理 HTML 檔案時 **按類別選取元素**,本指南將完整說明操作步驟。您將學會從檔案讀取 HTML、使用 `querySelectorAll` 找出外部連結,並安全地遍歷產生的 `NodeList`。 + +在 Java 中操作 HTML 往往感覺笨重,但現代函式庫提供簡潔、基於 CSS 選擇器的 API。以下範例使用 **jsoup**(版本 1.17.2),因為它實作了 `querySelectorAll` 風格的選擇器,並回傳可類比 `NodeList` 的 `Elements` 集合。若有需要,也可以將相同邏輯套用到其他 DOM 實作上。 + +## 前置條件 + +在開始之前,請確保您已具備: + +* JDK 17 或更新版本。 +* Maven 或 Gradle 以管理相依性。 +* 基本的 Java Stream 與 DOM 模型概念。 + +將 jsoup 加入您的專案: + +```xml + +` elem létrehozása és szöveg hozzáadása a HTML-hez + +Új elem létrehozása hasonló a böngészőben a `document.createElement` használatához. + +```java +import com.aspose.html.dom.Element; + +// Create a
element +Element paragraph = doc.createElement("p"); + +// Set the text node inside the
+paragraph.setTextContent("Added by Aspose.HTML"); +``` + +A `setTextContent` automatikusan létrehoz egy szövegcserkét és csatolja az elemhez, ami a **szöveg HTML-hez való hozzáadásának** ajánlott módja. Ez a metódus automatikusan escape-eli azokat a karaktereket, amelyek megtörhetnék a markup-ot. + +## 3. lépés: Az elem hozzáfűzése a body-hoz + +Miután a bekezdés készen áll, be kell helyezned a dokumentum `
` részébe. + +```java +// Append the new paragraph to the element +doc.getBody().appendChild(paragraph); +``` + +A `doc.getBody()` visszaadja a `` csomópontot, és az `appendChild` az új `` elemet az utolsó gyermekként illeszti be. Ha a dokumentumnak nincs `
` eleme (ami ritka egy jól formált HTML fájl esetén), az Aspose.HTML automatikusan létrehozza. + +## 4. lépés: A módosított dokumentum mentése + +Végül írjuk vissza a frissített DOM-ot a lemezre. + +```java +// Replace with the desired output path +String outputPath = "YOUR_DIRECTORY/output.html"; +doc.save(outputPath); +``` + +A `save` sorosítja a DOM-ot, megőrizve a meglévő markup-ot és hozzáadva az új bekezdést. Az eredményül kapott `output.html` a következőket tartalmazza: + +```html + + +Added by Aspose.HTML
+ + +``` + +## Teljes forráskód (java html példa) + +Az összes lépés egyesítése egy önálló programot eredményez, amelyet azonnal futtathatsz. + +```java +import com.aspose.html.HTMLDocument; +import com.aspose.html.dom.Element; + +public class DomManipulation { + public static void main(String[] args) throws Exception { + // Step 1: Load the existing HTML document + HTMLDocument doc = new HTMLDocument("YOUR_DIRECTORY/input.html"); + + // Step 2: Create a newelement and set its text + Element paragraph = doc.createElement("p"); + paragraph.setTextContent("Added by Aspose.HTML"); + + // Step 3: Append the new element to the document body + doc.getBody().appendChild(paragraph); + + // Step 4: Save the modified document to a new file + doc.save("YOUR_DIRECTORY/output.html"); + } +} +``` + +### Mit csinál a kód + +| Lépés | Művelet | Miért fontos | +|------|--------|--------------| +| Dokumentum betöltése | `new HTMLDocument(...)` | A forrás HTML-t DOM-ba elemzi, amelyet módosíthatsz. | +| Elem létrehozása | `doc.createElement("p")` | A böngésző API-ját tükrözi, biztosítva, hogy az elem megfeleljen a HTML szabványoknak. | +| Szöveg beállítása | `setTextContent(...)` | Biztosítja a megfelelő escape-elést és elkerüli a kézi szövegcserke létrehozását. | +| A body-hoz hozzáfűzés | `doc.getBody().appendChild(...)` | Az új elemet a böngészők által renderelt helyre helyezi. | +| Fájl mentése | `doc.save(...)` | A változtatásokat perzisztálja, érvényes HTML fájlt hozva létre további felhasználásra. | + +## Gyakori variációk és szélhelyzetek + +* **Több elem hozzáadása** – ismételd meg a 2‑3. lépéseket minden új csomópont esetén, mielőtt meghívod a `save`-t. +* **Beszúrás egy adott csomópont elé** – használd az `insertBefore(newNode, referenceNode)`-t az `appendChild` helyett. +* **Fragmentumokkal való munka** – a `doc.createDocumentFragment()` lehetővé teszi, hogy egy csomópontrendszert építs fel, és egy művelettel csatolj, ami nagy frissítéseknél javítja a teljesítményt. +* **UTF‑8 karakterek kezelése** – Az Aspose.HTML automatikusan UTF‑8-at ír; csak győződj meg róla, hogy a forrásfájl is ugyanígy van kódolva. + +## Gyakorlati tippek + +* **Útvonal kezelése** – Használd a `java.nio.file.Paths` osztályt platform‑független fájlutak építéséhez. +* **Kivételbiztonság** – Csomagold be az egész blokkot egy try‑with‑resources szerkezetbe, ha további stream-eket kell bezárnod. +* **Teljesítmény** – Nagyon nagy HTML fájlok esetén fontold meg a dokumentum betöltését `HTMLDocument(String, LoadOptions)`-nal, ahol letilthatod a külső erőforrások betöltését a gyorsabb parsing érdekében. + +## Az eredmény ellenőrzése + +A program futtatása után nyisd meg az `output.html` fájlt bármely böngészőben. Látnod kell a „Added by Aspose.HTML” bekezdést, amely a eredeti body vége után jelenik meg. Ellenőrizd a forráskódot, hogy megbizonyosodj róla, hogy a `
` elem jelen van a `
` belsejében. + +## Összegzés + +Most már tudod, hogyan **hozz létre HTML elemet** Java-ban, **adj hozzá egy bekezdést**, **szöveget a HTML-hez**, és **fűzd hozzá az elemet a body-hoz** az Aspose.HTML segítségével. A teljes **java html példa** egy tiszta, termelés‑kész munkafolyamatot mutat be, amelyet bővíthetsz bármely HTML dokumentum részének manipulálására. + +Ezután fedezd fel a kapcsolódó témákat, például **attribútumok módosítása**, **csomópontok eltávolítása**, vagy **CSS stílusok kezelése**, hogy gazdagabb HTML feldolgozó csővezetékeket építs. Boldog kódolást! + +## Mit érdemes legközelebb tanulni? + +Az alábbi tutorialok szorosan kapcsolódó témákat fednek le, amelyek a jelen útmutatóban bemutatott technikákra épülnek. Minden forrás tartalmaz teljes, működő kódrészleteket lépésről‑lépésre magyarázatokkal, hogy segítsenek elsajátítani további API funkciókat és alternatív megvalósítási megközelítéseket a saját projektjeidben. + +- [Create new html element with Java – Full Aspose.HTML Guide](/html/english/java/editing-html-documents/create-new-html-element-with-java-full-aspose-html-guide/) +- [append child to body in Java – Full Aspose.HTML Tutorial](/html/english/java/editing-html-documents/append-child-to-body-in-java-full-aspose-html-tutorial/) +- [Append Element to Body with Aspose.HTML for Java using a DOM Mutation Observer](/html/english/java/advanced-usage/dom-mutation-observer-observing-node-additions/) + +{{< /blocks/products/pf/tutorial-page-section >}} +{{< /blocks/products/pf/main-container >}} +{{< /blocks/products/pf/main-wrap-class >}} +{{< blocks/products/products-backtop-button >}} \ No newline at end of file diff --git a/html/hungarian/java/creating-managing-html-documents/how-to-select-elements-by-class-in-java-using-queryselectora/_index.md b/html/hungarian/java/creating-managing-html-documents/how-to-select-elements-by-class-in-java-using-queryselectora/_index.md new file mode 100644 index 0000000000..8418af0fdb --- /dev/null +++ b/html/hungarian/java/creating-managing-html-documents/how-to-select-elements-by-class-in-java-using-queryselectora/_index.md @@ -0,0 +1,254 @@ +--- +category: general +date: 2026-09-29 +description: Tanulja meg, hogyan válasszon ki elemeket osztály alapján, olvassa be + a HTML-t fájlból, és találja meg a külső hivatkozásokat Java-ban. Ez a lépésről‑lépésre + útmutató hatékonyan bemutatja a NodeList iterálását. +draft: false +images: +- PLACEHOLDER_URL/og-image.png +keywords: +- select elements by class +- read html from file +- find external links +- iterate nodelist java +- use queryselectorall java +language: hu +lastmod: 2026-09-29 +og_description: Válasszon ki elemeket osztály alapján Java-ban, olvassa be a HTML-t + fájlból, és találja meg a külső hivatkozásokat a querySelectorAll segítségével. + Kövesse a teljes példát a NodeList iterálásához. +og_image_alt: Screenshot showing Java code that selects elements by class from an + HTML file +og_title: Elemek kiválasztása osztály alapján Java-ban – teljes útmutató a querySelectorAll + használatához +schemas: +- author: Aspose + dateModified: '2026-09-29' + description: Learn how to select elements by class, read HTML from file, and find + external links in Java. This step‑by‑step guide covers iterating a NodeList efficiently. + headline: How to select elements by class in Java using querySelectorAll + type: TechArticle +- questions: + - answer: Yes. `Jsoup.parse` treats the input as a fragment and automatically adds + missing root elements, allowing selectors to work on the fragment’s body. + question: Does this work with HTML fragments that lack a `` root? + - answer: The standard Java DOM API (`org.w3c.dom`) does not include `querySelectorAll`. + Libraries such as **HTMLUnit** or **jodd-lagarto** provide similar methods. + The pattern shown here—load, select with CSS, iterate—remains the same. + question: Can I use `querySelectorAll` without jsoup? + - answer: 'After obtaining each `Element`, you can call `link.attr("href", "newUrl")` + and then write the document back to disk with `Files.writeString`. ## Conclusion + You now know how to **select elements by class**, **read HTML from file**, **find + external links**, and **iterate a NodeList in Java** using `qu' + question: What if I need to modify the links instead of just printing them? + type: FAQPage +tags: +- Java +- HTML parsing +- DOM manipulation +title: Hogyan válasszunk ki elemeket osztály szerint Java-ban a querySelectorAll segítségével +url: /hu/java/creating-managing-html-documents/how-to-select-elements-by-class-in-java-using-queryselectora/ +--- + +{{< blocks/products/pf/main-wrap-class >}} +{{< blocks/products/pf/main-container >}} +{{< blocks/products/pf/tutorial-page-section >}} + +# Hogyan válasszunk ki elemeket osztály szerint Java-ban a querySelectorAll használatával + +Ha Java-ban HTML-fájlt dolgozol fel, és **osztály szerint kell elemeket kiválasztani**, ez az útmutató pontosan megmutatja, hogyan kell ezt megtenni. Megtanulod, hogyan olvass HTML-t fájlból, használod a `querySelectorAll`-t külső linkek megtalálásához, és biztonságosan iterálod a kapott `NodeList`-et. + +A HTML kezelése Java-ban gyakran nehézkesnek tűnik, de a modern könyvtárak egy tömör, CSS‑selector‑alapú API-t biztosítanak. Az alábbi példa **jsoup**-ot (1.17.2 verzió) használ, mivel ez megvalósítja a `querySelectorAll`‑stílusú szelektorokat, és egy `Elements` gyűjteményt ad vissza, amely úgy viselkedik, mint egy `NodeList`. Szükség esetén ugyanazt a logikát más DOM megvalósításokra is adaptálhatod. + +## Előkövetelmények + +* JDK 17 vagy újabb telepítve. +* Maven vagy Gradle a függőségkezeléshez. +* Alapvető ismeretek a Java stream-ekkel és a DOM modellel. + +Add hozzá a jsoup-ot a projektedhez: + +```xml + +` baru dan tambahkan teks ke HTML + +Membuat elemen baru mirip dengan menggunakan `document.createElement` di browser. + +```java +import com.aspose.html.dom.Element; + +// Create a
element +Element paragraph = doc.createElement("p"); + +// Set the text node inside the
+paragraph.setTextContent("Added by Aspose.HTML"); +``` + +`setTextContent` secara otomatis membuat node teks dan melampirkannya ke elemen, yang merupakan cara yang disarankan untuk **menambahkan teks ke HTML**. Metode ini juga meng-escape karakter yang dapat merusak markup. + +## Langkah 3: Tambahkan elemen ke body + +Sekarang paragraf sudah siap, Anda perlu menempatkannya di dalam `
` dokumen. + +```java +// Append the new paragraph to the element +doc.getBody().appendChild(paragraph); +``` + +`doc.getBody()` mengembalikan node ``, dan `appendChild` menyisipkan `` baru sebagai child terakhir. Jika dokumen tidak memiliki elemen `
` (jarang terjadi pada file HTML yang terstruktur dengan baik), Aspose.HTML akan membuatnya secara otomatis. + +## Langkah 4: Simpan dokumen yang telah dimodifikasi + +Akhirnya, tulis kembali DOM yang diperbarui ke disk. + +```java +// Replace with the desired output path +String outputPath = "YOUR_DIRECTORY/output.html"; +doc.save(outputPath); +``` + +`save` men-serialize DOM, mempertahankan markup yang ada dan menambahkan paragraf baru. `output.html` yang dihasilkan akan berisi: + +```html + + +Added by Aspose.HTML
+ + +``` + +## Kode sumber lengkap (contoh java html) + +Menggabungkan semua langkah memberikan Anda program mandiri yang dapat langsung dijalankan. + +```java +import com.aspose.html.HTMLDocument; +import com.aspose.html.dom.Element; + +public class DomManipulation { + public static void main(String[] args) throws Exception { + // Step 1: Load the existing HTML document + HTMLDocument doc = new HTMLDocument("YOUR_DIRECTORY/input.html"); + + // Step 2: Create a newelement and set its text + Element paragraph = doc.createElement("p"); + paragraph.setTextContent("Added by Aspose.HTML"); + + // Step 3: Append the new element to the document body + doc.getBody().appendChild(paragraph); + + // Step 4: Save the modified document to a new file + doc.save("YOUR_DIRECTORY/output.html"); + } +} +``` + +### Apa yang dilakukan kode + +| Step | Action | Why it matters | +|------|--------|----------------| +| Load document | `new HTMLDocument(...)` | Mem-parsing HTML sumber menjadi DOM yang dapat Anda manipulasi. | +| Create element | `doc.createElement("p")` | Mencerminkan API browser, memastikan elemen mengikuti standar HTML. | +| Set text | `setTextContent(...)` | Menjamin escaping yang tepat dan menghindari pembuatan node teks secara manual. | +| Append to body | `doc.getBody().appendChild(...)` | Menempatkan elemen baru di tempat yang akan dirender oleh browser. | +| Save file | `doc.save(...)` | Menyimpan perubahan, menghasilkan file HTML yang valid siap digunakan lebih lanjut. | + +## Variasi umum dan kasus tepi + +* **Menambahkan banyak elemen** – ulangi langkah 2‑3 untuk setiap node baru sebelum memanggil `save`. +* **Menyisipkan sebelum node tertentu** – gunakan `insertBefore(newNode, referenceNode)` alih-alih `appendChild`. +* **Bekerja dengan fragmen** – `doc.createDocumentFragment()` memungkinkan Anda membangun sekumpulan node dan melampirkannya dalam satu operasi, yang meningkatkan kinerja untuk pembaruan besar. +* **Menangani karakter UTF‑8** – Aspose.HTML secara otomatis menulis UTF‑8; pastikan file sumber Anda dienkode dengan cara yang sama. + +## Tips praktis + +* **Penanganan path** – Gunakan `java.nio.file.Paths` untuk membangun path file yang independen platform. +* **Keamanan pengecualian** – Bungkus seluruh blok dalam pernyataan try‑with‑resources jika Anda perlu menutup stream tambahan. +* **Kinerja** – Untuk file HTML yang sangat besar, pertimbangkan memuat dokumen dengan `HTMLDocument(String, LoadOptions)` dimana Anda dapat menonaktifkan sumber eksternal untuk mempercepat parsing. + +## Verifikasi hasil + +Setelah menjalankan program, buka `output.html` di browser apa pun. Anda harus melihat paragraf “Added by Aspose.HTML” ditampilkan di tempat akhir body asli. Periksa sumber halaman untuk memastikan elemen `
` ada di dalam `
`. + +## Kesimpulan + +Anda sekarang tahu cara **membuat elemen HTML** di Java, **menambahkan paragraf**, **menambahkan teks ke HTML**, dan **menambahkan elemen ke body** menggunakan Aspose.HTML. **Contoh java html** lengkap menunjukkan alur kerja yang bersih dan siap produksi yang dapat Anda perluas untuk memanipulasi bagian mana pun dari dokumen HTML. + +Selanjutnya, jelajahi topik terkait seperti **memodifikasi atribut**, **menghapus node**, atau **bekerja dengan gaya CSS** untuk membangun pipeline pemrosesan HTML yang lebih kaya. Selamat coding! + +## Apa yang Harus Anda Pelajari Selanjutnya? + +Tutorial berikut mencakup topik yang sangat terkait yang membangun teknik yang ditunjukkan dalam panduan ini. Setiap sumber mencakup contoh kode lengkap yang berfungsi dengan penjelasan langkah demi langkah untuk membantu Anda menguasai fitur API tambahan dan mengeksplorasi pendekatan implementasi alternatif dalam proyek Anda sendiri. + +- [Buat elemen html baru dengan Java – Panduan Lengkap Aspose.HTML](/html/english/java/editing-html-documents/create-new-html-element-with-java-full-aspose-html-guide/) +- [tambahkan child ke body di Java – Tutorial Lengkap Aspose.HTML](/html/english/java/editing-html-documents/append-child-to-body-in-java-full-aspose-html-tutorial/) +- [Tambahkan Elemen ke Body dengan Aspose.HTML untuk Java menggunakan DOM Mutation Observer](/html/english/java/advanced-usage/dom-mutation-observer-observing-node-additions/) + +{{< /blocks/products/pf/tutorial-page-section >}} +{{< /blocks/products/pf/main-container >}} +{{< /blocks/products/pf/main-wrap-class >}} +{{< blocks/products/products-backtop-button >}} \ No newline at end of file diff --git a/html/indonesian/java/creating-managing-html-documents/how-to-select-elements-by-class-in-java-using-queryselectora/_index.md b/html/indonesian/java/creating-managing-html-documents/how-to-select-elements-by-class-in-java-using-queryselectora/_index.md new file mode 100644 index 0000000000..60f6ea6c32 --- /dev/null +++ b/html/indonesian/java/creating-managing-html-documents/how-to-select-elements-by-class-in-java-using-queryselectora/_index.md @@ -0,0 +1,257 @@ +--- +category: general +date: 2026-09-29 +description: Pelajari cara memilih elemen berdasarkan kelas, membaca HTML dari file, + dan menemukan tautan eksternal dalam Java. Panduan langkah demi langkah ini mencakup + iterasi NodeList secara efisien. +draft: false +images: +- PLACEHOLDER_URL/og-image.png +keywords: +- select elements by class +- read html from file +- find external links +- iterate nodelist java +- use queryselectorall java +language: id +lastmod: 2026-09-29 +og_description: Pilih elemen berdasarkan kelas di Java, baca HTML dari file, dan temukan + tautan eksternal menggunakan querySelectorAll. Ikuti contoh lengkap untuk mengiterasi + NodeList. +og_image_alt: Screenshot showing Java code that selects elements by class from an + HTML file +og_title: Pilih elemen berdasarkan kelas di Java – panduan lengkap dengan querySelectorAll +schemas: +- author: Aspose + dateModified: '2026-09-29' + description: Learn how to select elements by class, read HTML from file, and find + external links in Java. This step‑by‑step guide covers iterating a NodeList efficiently. + headline: How to select elements by class in Java using querySelectorAll + type: TechArticle +- questions: + - answer: Yes. `Jsoup.parse` treats the input as a fragment and automatically adds + missing root elements, allowing selectors to work on the fragment’s body. + question: Does this work with HTML fragments that lack a `` root? + - answer: The standard Java DOM API (`org.w3c.dom`) does not include `querySelectorAll`. + Libraries such as **HTMLUnit** or **jodd-lagarto** provide similar methods. + The pattern shown here—load, select with CSS, iterate—remains the same. + question: Can I use `querySelectorAll` without jsoup? + - answer: 'After obtaining each `Element`, you can call `link.attr("href", "newUrl")` + and then write the document back to disk with `Files.writeString`. ## Conclusion + You now know how to **select elements by class**, **read HTML from file**, **find + external links**, and **iterate a NodeList in Java** using `qu' + question: What if I need to modify the links instead of just printing them? + type: FAQPage +tags: +- Java +- HTML parsing +- DOM manipulation +title: Cara memilih elemen berdasarkan kelas di Java menggunakan querySelectorAll +url: /id/java/creating-managing-html-documents/how-to-select-elements-by-class-in-java-using-queryselectora/ +--- + +{{< blocks/products/pf/main-wrap-class >}} +{{< blocks/products/pf/main-container >}} +{{< blocks/products/pf/tutorial-page-section >}} + +# Cara memilih elemen berdasarkan kelas di Java menggunakan querySelectorAll + +Jika Anda perlu **memilih elemen berdasarkan kelas** saat memproses file HTML di Java, panduan ini menunjukkan secara tepat cara melakukannya. Anda akan belajar membaca HTML dari file, menggunakan `querySelectorAll` untuk menemukan tautan eksternal, dan mengiterasi `NodeList` yang dihasilkan dengan aman. + +Bekerja dengan HTML di Java sering terasa berat, tetapi pustaka modern memberi Anda API berbasis selector CSS yang ringkas. Contoh di bawah menggunakan **jsoup** (versi 1.17.2) karena ia mengimplementasikan selector bergaya `querySelectorAll` dan mengembalikan koleksi `Elements` yang berperilaku seperti `NodeList`. Anda dapat menyesuaikan logika yang sama ke implementasi DOM lain bila diperlukan. + +## Prasyarat + +Sebelum memulai, pastikan Anda memiliki: + +* JDK 17 atau lebih baru terpasang. +* Maven atau Gradle untuk manajemen dependensi. +* Familiaritas dasar dengan stream Java dan model DOM. + +Tambahkan jsoup ke proyek Anda: + +```xml + +