我在将XML文档类型转换为Document对象时遇到了问题.这是一段代码
Document doc=null;
doc = (Document) parser.parse(sourceFile);
Run Code Online (Sandbox Code Playgroud)
对于这一行2,它抛出java classcast异常..
没有类型转换它显示错误
Type mismatch: cannot convert from org.w3c.dom.Document to javax.swing.text.Document
Run Code Online (Sandbox Code Playgroud)
我现在如何正确地进行类型转换?有什么建议??
问题是在不合格的名称中存在冲突.
也就是说,作为您的import语句的结果,非限定名称Document引用javax.swing.text.Document,但您确实需要org.w3c.dom.Document(这是解析器返回的类型).
您可以使用完全限定名称来解决此问题:
org.w3c.dom.Document doc = (org.w3c.dom.Document) parser.parse(sourceFile);
Run Code Online (Sandbox Code Playgroud)
或者,您还可以具体import具体Document如下:
import javax.swing.text.*;
import org.w3c.dom.*;
import org.w3c.dom.Document;
//...
Document doc = (Document) parser.parse(sourceFile);
Run Code Online (Sandbox Code Playgroud)
这称为单类型导入声明(JLS 7.5.1),它可用于"遮蔽"其他声明.
| 归档时间: |
|
| 查看次数: |
3073 次 |
| 最近记录: |