❶ 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"));」的「//」了??