根据文件的系统路径进行读取不会出现乱码,如果根据url(如:http://www.juapk.com/index.html)读取,一定要设置好服务器的编码格式,要不然会出现乱码的。
下面是在网上找到的一个例子:
import java.io.*;
import java.awt.event.*;
import javax.swing.JEditorPane;
import javax.swing.JFrame;
import javax.swing.JScrollPane;
public class JEditorPaneTest {
public static void main(String[] args) {
JEditorPane editPane = null;
try {
//System.setProperty("file.encoding", "UTF-8");//系统编码格式
File file = new File("src/test.html");
String str = file.getAbsolutePath();//取得文件位置的绝对路径
str = "file:" + str;//将绝对路径合成一完整的输入字符串
editPane = new JEditorPane();//构造一个空的JEditorPane
editPane.setEditable(false);
//现在还不知道下边两行代码的作用
editPane.setContentType("text/html;charset=utf-8");
editPane.putClientProperty("charset", "utf-8");
editPane.setPage(str);
} catch (IOException ioe) {
ioe.printStackTrace(System.err);
System.exit(0);
}
editPane.setEditable(false);
JFrame f = new JFrame("JEditorPaneTest");
f.setContentPane(new JScrollPane(editPane));
f.setSize(200, 200);
f.show();
f.addWindowListener(new WindowAdapter() {
public void windowClosing(WindowEvent e) {
System.exit(0);
}
});
}
}
一个test.html页面(注意下边的文件保存的时候选择字符集为utf-8,要不然也会出现乱码的):<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title></title>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
</head>
<body>
TODO write:中国
</body>
</html>
相关推荐
1. **组件类型**:`JEditorPane`是`javax.swing.text.JTextComponent`的一个子类,因此它继承了`JTextComponent`的所有特性,如文本编辑、格式化和显示能力。 2. **HTML支持**:`JEditorPane`能够解析和显示HTML...
本资源主要关注如何实现将文件内容拖入JEditorPane以及将文件路径拖入其他Swing组件。JEditorPane是Swing提供的一种文本编辑器组件,它可以显示和编辑HTML、纯文本等多种格式的文本。 1. **Swing拖放机制**: ...
在Java的Swing库中,`JEditorPane`和`JTextPane`是两种非常重要的文本组件,它们允许用户编辑和显示富文本内容,包括不同的字体、颜色、字号、样式等。这两个组件都是`javax.swing.text`包的一部分,提供了丰富的...
在Java Swing库中,`JEditorPane`和`JTextPane`是两个常用的文本组件,它们用于显示和编辑富文本内容。这两个组件都是基于`javax.swing.text`包中的抽象类`Document`,提供了对HTML和纯文本的支持。在这个“控制...
在Java Swing中,我们可以使用`javax.swing.JEditorPane`或`javax.swing.WebView`(在JavaFX中)来显示和操作Web内容。然而,`DocumentRenderer`可能是一个自定义的类,专门设计用来将Web页面内容转换为适合打印的...
Swing盒SwingBox是Java Swing组件,它允许显示(X)HTML... 它被设计为JEditorPane的替代品,具有更好的渲染结果。 SwingBox是纯Java语言,它使用CSSBox渲染引擎来渲染文档。 有关更多信息和下载,请参见项目页面: :
本文主要介绍了JDK内置的JEditorPane组件,这是其中的一种方法。JEditorPane是Swing库中的一个轻量级组件,允许在Java应用中展示和编辑各种格式的内容,包括纯文本、HTML和RTF。 JEditorPane的创建可以通过以下几种...
... ... ...4. **绘制图像**:将每个元素在Canvas上逐个绘制,包括文本、图像、形状等。...5. **导出图片**:完成绘制后,Canvas提供了`toDataURL`方法,可以将整个画布转化为数据URL,进一步可以设置为`<img>`标签的`src`属性...
总的来说,这个项目为Java开发者提供了一个实践机会,通过学习和使用jdic JEditorPane,他们可以深入理解Java GUI编程,特别是如何在Java应用程序中嵌入复杂的Web浏览功能。同时,这也是一种探究双内核浏览器工作...
本文主要介绍了在Java中实现这一功能的四种方法,重点讲解了JDK自带的JEditorPane组件。 JEditorPane是Swing库中的一个轻量级组件,它允许开发者在Java应用中展示和编辑多种格式的内容,包括纯文本、HTML和RTF。...
本文主要介绍了四种在Java中实现网页浏览器组件的方法,其中重点关注JDK自带的JEditorPane。JEditorPane是Swing库中的一个组件,它可以显示和编辑多种格式的内容,包括纯文本、HTML和RTF。 **JEditorPane组件详解**...
本教程将详细解释如何在Java中实现超链接,以及涉及到的关键技术,包括`HyperlinkEvent`、`JEditorPane`、`Runtime.getRuntime()`。 首先,我们来看`HyperlinkEvent`。这是一个Java AWT(抽象窗口工具包)事件类,...
private JEditorPane jep = new JEditorPane(); ``` 2. 设置内容类型为HTML ```java jep.setContentType("text/html"); ``` 3. 禁止编辑 ```java jep.setEditable(false); ``` 4. 注册`HyperlinkListener`来处理...
JEditorPane editorPane = new JEditorPane(); try { editorPane.setPage("http://www.example.com"); // 替换为你想加载的网页URL } catch (IOException e) { e.printStackTrace(); } // 将JEditorPane添加...
由于`JEditorPane`不能自动调整大小以适应网页内容,我们可以将其放入`JScrollPane`中,这样当网页内容超出组件大小时,用户可以通过滚动条查看剩余内容。 4. **ActionListener**:为了让用户可以导航到新的URL,...