- 浏览: 748049 次
- 性别:
- 来自: 上海
-
文章分类
- 全部博客 (419)
- 杂软粉墨 (2)
- 创意灵感 (3)
- 经验记录 (137)
- 开源轨迹 (2)
- sip-communicator (2)
- 闲侃杂谈 (8)
- 问题交流 (24)
- 概念模式 (32)
- 难点备案 (5)
- JwChat (1)
- 中国象棋 (1)
- 教育探索 (6)
- 英语研究 (58)
- 星际争霸 (1)
- 电信知识 (1)
- 软件架构 (3)
- 哲学探索 (26)
- 算法灵魂 (8)
- 近视探索 (6)
- 数学数学 (3)
- 牛角钻尖 (23)
- 至强文言 (3)
- 数据结构 (1)
- 宇宙物理 (2)
- 网络架构 (3)
- 游戏领域 (4)
- 图形处理 (2)
- 修炼之路 (8)
- 读书天地 (20)
- 编解乱码 (2)
- 概念探索 (8)
- 格物致知 (1)
- 其它语言 (1)
- 测试领域 (3)
- 文化风流 (1)
- JQuery (1)
- 網頁領域 (1)
- Unix/Linux (1)
- Inside JVM (1)
- 异常分析 (1)
最新评论
-
suyujie:
引用
HTML <a> 标签灰显禁用 -
suyujie:
HTML <a> 标签灰显禁用 -
suyujie:
HTML <a> 标签灰显禁用 -
suyujie:
HTML <a> 标签灰显禁用 -
iamzhoug37:
您能说一下"局部变量不受文本顺序限制" 是 ...
声明前为什么能赋值却不能输出,都是使用
代码如下:
import java.io.FileInputStream; import java.io.FileNotFoundException; import java.io.IOException; import java.io.InputStream; import javax.swing.JFrame; import javax.swing.JTextPane; import javax.swing.text.BadLocationException; import javax.swing.text.DefaultStyledDocument; import javax.swing.text.StyleContext; import javax.swing.text.rtf.RTFEditorKit; public class Test { public static void main(String[] args) { InputStream in = null; try { in = new FileInputStream("bbb.rtf"); } catch (FileNotFoundException e) { e.printStackTrace(); } DefaultStyledDocument doc = new DefaultStyledDocument(new StyleContext()); RTFEditorKit kit = new RTFEditorKit(); try { kit.read(in, doc, 0); } catch (IOException e) { e.printStackTrace(); } catch (BadLocationException e) { e.printStackTrace(); } System.out.println("Reading, Doc length = " + doc.getLength()); JFrame jframe = new JFrame(); JTextPane jtp = new JTextPane(); jtp.setDocument(doc); jframe.add(jtp); jframe.setSize(400, 200); jframe.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); jframe.setVisible(true); } }
结果在JTextPane中显示比rtf文档中末尾多了一个回车,经研究发现是由于setDocument方法引起的。
其方法说明是 Associates the editor with a text document. This must be a
StyledDocument
.
我想是Associates的缘故吧,document本身末尾含回车,JTextPane中也是有回车的,因此组合一起就多了一个回车,但是如何解决这个问题呢?
2009.11.11 14:38编辑添加:
保证不多出换行的一个权宜办法:
try { jtp.getDocument().insertString(0, doc.getText(0, doc.getLength() - 1), null); } catch (BadLocationException e) { e.printStackTrace(); }
此段用来替换
jtp.setDocument(doc);
至于insertString之后的文字无格式,可以通过构造insertString方法的第三参数AttributeSet来添加,此处为null,例如:
SimpleAttributeSet attrset = new SimpleAttributeSet(); StyleConstants.setForeground(attrset, Color.red); StyleConstants.setUnderline(attrset, true); StyleConstants.setItalic(attrset, true); StyleConstants.setFontSize(attrset, 24);
至于其与原先doc的格式关联,还未找到。
发表评论
-
RuntimeException为啥不用声明抛出?
2012-11-13 15:04 7466异常,错误都是同一种父类:java.lang.Throwabl ... -
why null is allocated on java stack
2012-06-05 11:45 1191提问: 恩。。。俺的意思是, String str = n ... -
关于Java 泛型 ?extends T 的问题
2012-05-21 11:05 4361http://topic.csdn.net/u/2012051 ... -
HashSet的contains方法de解释是不是有问题
2011-02-20 22:27 3269first of all, exhibits the code ... -
hashcode中选择31因子的原因
2010-12-24 13:57 1481源自<<effective java 2nd> ... -
为什么AnonymousInnerClass只能访问final型非同一方法局部变量
2010-09-13 09:39 1447import java.io.IOException; im ... -
URLConnection访问servlet无反应
2010-07-26 09:28 2679这样完整的回路是ok的 客户端 import jav ... -
This is how scientists see the world
2010-07-14 15:36 1014有些东西不清楚,比如右上角什么东东,中间那个看似压强C, ... -
接口能描述成has-a吗
2010-07-10 10:19 1335接口has a什么呢? 如果说接口当作具备某种能力来用,比如X ... -
关于java.util.ResourceBundle
2010-07-05 14:17 4354import java.util.ResourceBundle ... -
ArrayList,Vector线程安全性测试
2010-06-18 09:43 3214import java.util.ArrayList; im ... -
SortedSet去重
2010-06-13 17:06 1337import java.util.Iterator; imp ... -
这个静态内部类实现的单例是迟加载且线程安全的吗?
2010-05-28 13:10 1633public class JiveProperties { ... -
double-checked locking实现的单例模式之volatile
2010-05-26 17:23 3512private volatile static Singlet ... -
死锁的例子描述对吗
2010-05-10 11:20 1106public class Deadlock { stati ... -
java中Adapter是什么概念
2010-04-06 11:30 4945Adapter乃适配器, ... -
编码转换会丢失信息吗
2010-03-09 13:13 1256编码转换会丢失信息吗? 这是个命题,根 ... -
文本文件在系统中的存储与展现方式
2010-02-04 09:38 1136碰到了一个问题,同样的一个properties ... -
servlet如何实现多线程访问同一个实例的多个service方法
2009-12-09 11:22 1625如题,这是我现在想的一个问题,暂存于此,它同一个方法的 ... -
构造方法是静态的吗?
2009-12-03 15:13 1435public class Test { private ...
相关推荐
本篇文章将深入探讨如何在Java中读取doc和rtf文档内容,并解决中文乱码问题,同时还会涉及到log4j日志记录以及使用Swing展示rtf内容。 首先,读取.doc文件通常涉及到使用Apache POI库。Apache POI是一个开源项目,...
然而,在`JTextPane`中实现搜索功能可能会遇到一些问题,特别是关于结果显示的部分。本文将深入探讨这些常见问题以及相应的解决方案。 首先,让我们了解`JTextPane`的基础。`JTextPane`基于抽象文本组件`Abstract...
### JAVA中的JTextPane:一个全面的解析与实例讲解 在Java Swing库中,`JTextPane`是一个功能强大的文本组件,它允许显示和编辑富文本格式,包括字体、颜色和排版等特性。本文将深入探讨`JTextPane`的基本概念、...
RTF(Rich Text Format)是一种跨平台的文本格式,它允许在不同的应用程序和操作系统之间交换格式丰富的文本。在Java中,我们可以通过使用`java.io`和`java.text`包中的类来实现RTF文件的创建和写入。下面将详细介绍...
JTextPane使用,可以传图片,文字等
在Java GUI编程中,`JTextPane`是一个非常重要的组件,它属于Swing库,用于显示和编辑富文本。在给定的标题“JTextPane 关键字变色”和描述“SWT JTextPane 可以把控件中需要的字符串的颜色修改成自己想要的颜色”中...
在Java Swing库中,`JEditorPane`和`JTextPane`是两个常用的文本组件,它们主要用于显示和编辑富文本内容。...如果你希望了解更多关于自定义`Document`或处理文本组件换行的实践知识,可以从给出的博客链接开始探索。
在Java Swing库中,`JTextPane`是一个高级文本组件,它允许用户处理富文本,包括格式化的文本、图像和嵌入对象。本项目提供的源码着重展示了如何在`JTextPane`中插入图片和艺术字,使得文本区域更加丰富多彩。`...
NULL 博文链接:https://icarusliu.iteye.com/blog/2098986
关于行间距,`JTextPane`可以通过设置`ParagraphAttributes`来调整。创建一个`ParagraphAttributes`对象,然后设置所需的间距,最后将其应用到文档中。 对于HTML中的空格处理,有时我们需要去除不必要的空格或者...
同时,对于有经验的开发者,它提供了一个基础的文本编辑器模板,可以在此基础上扩展出更多功能,如查找替换、拼写检查等。通过阅读和理解源码,开发者可以深化对Java GUI编程的理解,特别是Swing和JTextPane组件的...
Swing是Java编程语言中的一个图形用户界面(GUI)工具包,它是Java Foundation Classes (JFC)的一部分,由Sun Microsystems开发并引入Java平台。Swing提供了一系列组件,用于创建丰富的桌面应用程序,包括按钮、文本框...
课程设计期间做的Java的桌面端小程序,可以发送Emoji表情的聊天室,另外在文件夹中放置了自己的关键代码部分解析,关于emoji部分可查看笔者博客...
GUI界面包括编辑区,为了实现行号显示,有两种方案:一是使用两个JTextPane,二是只使用一个JTextPane。第一种方案可能导致行号刷新不及时,而第二种方案可能需要处理复杂的滚动条同步问题。 总的来说,这个项目...
【EditorMDI多文档编辑器】是一款基于Java Swing技术开发的多文档界面(MDI, Multiple Document Interface)编辑器。Swing是Java提供的一种用于构建图形用户界面(GUI)的库,它允许开发者创建功能丰富的桌面应用...