Java : SAXParseException (XML) 示例

Java 中的 SAXParseException (Java SE 23 & JDK 23) 及其示例。
您将找到大多数 SAXParseException 方法的代码示例。

注解 :

  • 本文可能使用了翻译软件以方便阅读。 另请查看英文原文

简介

封装 XML 解析错误或警告。 (机器翻译)

Class diagram

final var xml = """
        <root><<<root>
        """;

final var factory = DocumentBuilderFactory.newInstance();
final var builder = factory.newDocumentBuilder();

try {
    var _ = builder.parse(new ByteArrayInputStream(xml.getBytes()));
} catch (SAXException e) {
    System.out.println(e);
}

// Result
// ↓
//org.xml.sax.SAXParseException; lineNumber: 1; columnNumber: 8;
// The content of elements must consist of well-formed character data or markup.

Constructors

SAXParseException (String message, String publicId, String systemId, int lineNumber, int columnNumber)

创建一个新的SAXParseException。 (机器翻译)

final var e = new SAXParseException("message!", "public id!", "system id!", 123, 456);

System.out.println(e.getMessage()); // message!
System.out.println(e.getPublicId()); // public id!
System.out.println(e.getSystemId()); // system id!
System.out.println(e.getLineNumber()); // 123
System.out.println(e.getColumnNumber()); // 456

SAXParseException (String message, String publicId, String systemId, int lineNumber, int columnNumber, Exception e)

创建一个带有嵌入异常的新 SAXParseException。 (机器翻译)

final var cause = new IOException("XYZ");
final var e = new SAXParseException(
        "message!", "public id!", "system id!", 123, 456, cause);

System.out.println(e.getMessage()); // message!
System.out.println(e.getPublicId()); // public id!
System.out.println(e.getSystemId()); // system id!
System.out.println(e.getLineNumber()); // 123
System.out.println(e.getColumnNumber()); // 456
System.out.println(e.getException()); // java.io.IOException: XYZ

SAXParseException (String message, Locator locator)

从消息和定位器创建一个新的 SAXParseException。 (机器翻译)

final var e = new SAXParseException("abc", new LocatorImpl());
System.out.println(e); // org.xml.sax.SAXParseException; lineNumber: 0; columnNumber: 0; abc

SAXParseException (String message, Locator locator, Exception e)

将现有异常包装在 SAXParseException 中。 (机器翻译)

final var cause = new IOException("XYZ");
final var e = new SAXParseException("abc", new LocatorImpl(), cause);
System.out.println(e); // org.xml.sax.SAXParseException; lineNumber: 0; columnNumber: 0; abc
System.out.println(e.getException()); // java.io.IOException: XYZ

Methods

int getColumnNumber ()

发生异常的文本结尾的列号。 (机器翻译)

final var e = new SAXParseException("message!", "public id!", "system id!", 123, 456);

System.out.println(e.getMessage()); // message!
System.out.println(e.getPublicId()); // public id!
System.out.println(e.getSystemId()); // system id!
System.out.println(e.getLineNumber()); // 123
System.out.println(e.getColumnNumber()); // 456

int getLineNumber ()

发生异常的文本结尾的行号。 (机器翻译)

final var e = new SAXParseException("message!", "public id!", "system id!", 123, 456);

System.out.println(e.getMessage()); // message!
System.out.println(e.getPublicId()); // public id!
System.out.println(e.getSystemId()); // system id!
System.out.println(e.getLineNumber()); // 123
System.out.println(e.getColumnNumber()); // 456

String getPublicId ()

获取发生异常的实体的公共标识符。 (机器翻译)

final var e = new SAXParseException("message!", "public id!", "system id!", 123, 456);

System.out.println(e.getMessage()); // message!
System.out.println(e.getPublicId()); // public id!
System.out.println(e.getSystemId()); // system id!
System.out.println(e.getLineNumber()); // 123
System.out.println(e.getColumnNumber()); // 456

String getSystemId ()

获取发生异常的实体的系统标识符。 (机器翻译)

final var e = new SAXParseException("message!", "public id!", "system id!", 123, 456);

System.out.println(e.getMessage()); // message!
System.out.println(e.getPublicId()); // public id!
System.out.println(e.getSystemId()); // system id!
System.out.println(e.getLineNumber()); // 123
System.out.println(e.getColumnNumber()); // 456

String toString ()

覆盖 toString 以提供更详细的错误消息。 (机器翻译)

final var e = new SAXParseException("message!", "public id!", "system id!", 123, 456);
final var str = e.toString();
System.out.println(str);

// Result
// ↓
//org.xml.sax.SAXParseException
// publicId: public id!; systemId: system id!;
// lineNumber: 123; columnNumber: 456; message!

Methods declared in SAXException

getCause, getException, getMessage

请参阅下面的链接。

Methods declared in Throwable

addSuppressed, fillInStackTrace, getLocalizedMessage, getStackTrace, getSuppressed, initCause, printStackTrace, printStackTrace, printStackTrace, setStackTrace

请参阅下面的链接。


相关文章

To top of page