كيفية تحويل HTML إلى نص في جافا

يدور هذا الموضوع البسيط حول كيفية ** تحويل HTML إلى نص في Java **. في * Java HTML إلى نص عادي * يمكن تطوير تطبيق التحويل الذي يعمل تحت أنظمة Windows أو Linux أو macOS باستخدام واجهات API بسيطة وسهلة.

خطوات تحويل HTML إلى نص في Java

  1. تكوين مشروعك لإضافة Aspose.HTML for Java من مستودع Maven
  2. قم بتضمين المرجع إلى مساحة الاسم Aspose.HTML في تطبيقك
  3. اقرأ محتوى ملف HMTL المصدر باستخدام كائن String
  4. تهيئة الكائن HTMLDocument class لتحميل سلسلة HTML المصدر
  5. تهيئة كائن فئة INodeIterator لتكرار العقد وإلحاقها في StringBuilder
  6. احفظ النص المستخرج من HTML على القرص

من أجل * استخراج نص من تطبيق يعتمد على HTML Java * باستخدام بضعة أسطر من التعليمات البرمجية يمكن استخدامها. سنبدأ العملية عن طريق تحميل مصدر HTML في كائن String ثم تحميل تلك السلسلة لاحقًا باستخدام * HTMLDocument class *. سنستخدم بعد ذلك * INodeIterator * لاستخراج عقد HMTL واجتيازها وإلحاقها بـ StringBuilder. أخيرًا ، سيتم حفظ StringBuilder كملف نص عادي على القرص.

كود لتحويل HTML إلى نص في Java

import com.aspose.html.HTMLDocument;
import com.aspose.html.License;
import com.aspose.html.dom.Node;
import com.aspose.html.dom.traversal.INodeIterator;
import com.aspose.html.dom.traversal.filters.NodeFilter;
import java.nio.file.Paths;
import java.nio.file.Files;
import java.io.IOException;
import java.nio.charset.Charset;
import java.nio.charset.StandardCharsets;
import java.util.stream.Collectors;
public class HtmlToTextCoverter {
public static void main(String[] argsHTMLFile) throws Exception {
// Setting Aspose.Html Java API license to use complete features
License lic = new License();
lic.setLicense("HTML.Total.Java.lic");
// Read the HTML file in String
String content = null;
try {
content = readFileContent("TestFile.html", StandardCharsets.UTF_8);
} catch (IOException exception) {
exception.printStackTrace();
return;
}
// Instantiate HtmlDocument object to load HTML content in String
HTMLDocument document = new HTMLDocument(content, "");
// Initialize INodeIterator instance iterate HTML nodes
INodeIterator iterator = document.createNodeIterator(document, NodeFilter.SHOW_TEXT, new StyleFilter());
StringBuilder Stringbld = new StringBuilder();
// Temp Node object
Node node;
// Iterate through Nodes
while ((node = iterator.nextNode()) != null)
Stringbld.append(node.getNodeValue());
System.out.println(Stringbld.toString());
Files.write(Paths.get("HtmlToText_Java.txt"), Stringbld.toString().getBytes());
}
public static String readFileContent(String filePath, Charset encoding) throws IOException {
String fileContent = Files.lines(Paths.get(filePath), encoding)
.collect(Collectors.joining(System.lineSeparator()));
return fileContent;
}
}
class StyleFilter extends NodeFilter {
@Override
public short acceptNode(Node node) {
// In order to skip an element while fetching nodes, mention the name of element in upper case letters
return (node.getParentElement().getTagName() == "STYLE" || node.getParentElement().getTagName() == "SCRIPT"
? FILTER_REJECT : FILTER_ACCEPT);
}
}

المثال أعلاه في * Java يحول HTML إلى نص عادي * في عدد قليل من مكالمات API. لقد أنشأنا فئة * StyleFilter * التي تمتد * فئة NodeFilter * ونطبق طريقة * AcceptNode * لتعيين عوامل تصفية عقدة العميل وحذف العقد غير المرغوب فيها من HTML أثناء عملية التحويل.

في هذا الموضوع ، اكتشفنا * كيفية استخراج نص من HTML في Java *. إذا كنت مهتمًا بتحويل ملف MD إلى تنسيق XPS ، فانتقل إلى موضوع كيفية قم بتحويل Markdown إلى XPS باستخدام Java.

 عربي