❶ java 在操作rtf 格式文件实现动态word,当有中文的时候为什么会显示不出来呢
我估计是字体的问题
word文档显示的字体有一些是office自带的,而jre使用的字体是你操作系统的
对比一下把,把word里的中文改成你操作系统里有的字体应该就没问题了
试试。
❷ java读取rtf文件出现乱码,怎么解决
String text = new String(styleDoc.getText(0, styleDoc.getLength()).toString().getBytes("ISO8859_1"));
应该是你所有使用的编码有问题,可以换一个编码看看。
❸ java读取RTF文件里的所有图片,并将所有图片保存成图片文件 求代码
public int nextInt(int n) {
if (n <= 0)
throw new IllegalArgumentException("n must be positive");
if ((n & -n) == n) // i.e., n is a power of 2
return (int)((n * (long)next(31)) >> 31);
int bits, val;
do {
bits = next(31);
val = bits % n;
} while (bits - val + (n-1) < 0);
return val;
}
❹ java能读取到word文档或者rtf文档里面的内容、格式和图片吗
当然可以,使用File流读取数据;图片可能读取不到你自己试下就知道了
❺ 将数据库中存储的RTF格式的数据,在Java的JTextArea中显示出来
您好,import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
public class jdbc01 {
public static void main(String[] args){
Connection conn = null;
PreparedStatement pstmt = null;
ResultSet rs = null;
try {
Class.forName("oracle.jdbc.driver.OracleDriver");
conn = DriverManager.getConnection("jdbc:oracl:thin:localhost:1521:ORCL","scott","tiger");//这里改成你的数据库实例名,帐号和密码
pstmt = conn.prepareStatement("select ename from emp ");//这里写你的数据库查询语句
rs = pstmt.executeQuery();//将查询结果放入一个结果集中
while(rs.next()){//读取结果集中的数据
String ename = rs.getString(1);
//JTextArea text=new JTextArea();
//text.setText(ename); //这里就可以将数据写到TextArea里面了
System.out.println(ename);
}
} catch (Exception e) {
e.printStackTrace();
} finally{
try {
if(rs!=null){
rs.close();
}
if(pstmt!=null){
pstmt.close();
}
if(conn!=null){
conn.close();
}
} catch (SQLException e) {
e.printStackTrace();
}
}
}
}
❻ java读取RTF出现乱码
字符集编码不统一自己仔细看看
❼ 什么是RTF格式
RTF格式
RTF格式是许多软件都能够识别的文件格式。比如Word、WPSOffice、Excel等都可以打开RTF格式的文件,这说明这种格式是较为通用的。
RTF是RichTextFormat的缩写,意即多文本格式。这是一种类似DOC格式(Word文档)的文件,有很好的兼容性,使用Windows“附件”中的“写字板”就能打开并进行编辑。使用“写字板”打开一个RTF格式文件时,将看到文件的内容;如果要查看TRF格式文件的源代码,只要使用“记事本”将它打开就行了。这就是说,你完全可以像编辑HTML文件一样,使用“记事本”来编辑RTF格式文件。
对普通用户而言,RTF格式是一个很好的文件格式转换工具,用于在不同应用程序之间进行格式化文本文档的传送。
❽ java 中,如何读取rtf富文本格式
使用JEditorPane就行
❾ java中如何将字符转换成rtf格式
int inext=0;//用来判断中文 编码出现 第一次出现为0 第二次出现为1 add by wde
public String strToRtf(String content){
char[] digital = "0123456789ABCDEF".toCharArray();
StringBuffer sb = new StringBuffer("");
byte[] bs = content.getBytes();
int bit;
for (int i = 0; i < bs.length; i++) {
bit = (bs[i] & 0x0f0) >> 4;
/*2009-7-5 add by wde 增加中文支持
*思路:通过getBytes获取的中文的assii小于0,根据rtf中文的的编码
* 所以只需要在中文的2个编码 第一个编码前加 第二个编码后加
* 加了一个变量inext 用来判断中文的assii 前一个和后一个。
* 这样在rtf中文的乱码就可以解决了。
*/
if(bs[i]>0){
sb.append("\\'");
}else{
if(inext==0){
//通过写字板创建的rtf模板 add by wde
//sb.append("\\lang2052\\f1");
//通过WPS2009创建的rtf模板 add by wde
// sb.append("\\lang1033 \\langnp1033 \\langfe2052 \\langfenp2052 \\cf1");
//通过MS word创建的rtf模板 add by wde
sb.append("\\loch\\af2\\hich\\af2\\dbch\\f31505");
sb.append("\\'");
inext=1;
}else{
sb.append("\\'");
}
}
sb.append(digital[bit]);
bit = bs[i] & 0x0f;
sb.append(digital[bit]);
if(bs[i]<0&&inext==1){
// 通过写字板创建的rtf模板 add by wde
//sb.append("\\lang1033\\f0");
// 通过WPS2009创建的rtf模板 add by wde
//sb.append(" \\lang1033\\langnp1033 \\langfe2052\\langfenp2052 \\cf1");
// 通过MS word创建的rtf模板 add by wde
sb.append("\\hich\\af2\\dbch\\af31505\\loch\\f2");
inext=0;
}
}
return sb.toString();
}
❿ 我用java读取RTF文档,读出来的汉字都是乱码 那位大侠给个解决办法
没理由啊!你确定运行的时候去掉了“ //String re = new String(m_doc.getText(0,m_doc.getLength()).getBytes("ISO8859_1"));”的“//”了??