Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Java: Общие вопросы > Запись в rtf


Автор: po4emuchka 23.6.2008, 01:09
Пытаюсь из одного rtf файла записать в другой, но при попытке записи выдаёт IOException :RTF is a 8-bit format. Может я в неправильной кодировке пишу?
Код

import javax.swing.text.*;
import javax.swing.text.rtf.*;
import java.io.*;
 
public class myRTF {
    public static void main(String args[])
    throws UnsupportedEncodingException, FileNotFoundException, IOException{
        InputStream in = new FileInputStream(args[0]);
        OutputStreamWriter out = new OutputStreamWriter(new FileOutputStream(args[1]));
        RTFEditorKit rtf=new RTFEditorKit();
        DefaultStyledDocument doc = new DefaultStyledDocument();
        try {
            rtf.read(in, doc, 0);
            rtf.write(out,doc,0,doc.getLength());
        } catch (Exception e) {
            System.out.println(e);
        }
        out.close();
    }
}

Автор: inohodec 23.6.2008, 08:08
Попробуй заменить строчку

Код

OutputStreamWriter out = new OutputStreamWriter(new FileOutputStream(args[1]));


нa

Код

FileOutputStream out = new FileOutputStream(args[1]);

Автор: po4emuchka 24.6.2008, 16:21
Заработало, спасибо!!! 

Автор: inohodec 24.6.2008, 16:48
OutputStreamWriter:
Код

java.lang.Object
  java.io.Writer
      java.io.OutputStreamWriter


FileOutputStream:
Код

java.lang.Object
  java.io.OutputStream
      java.io.FileOutputStream


Writer/Reader классы символьно-ориентировоанны (character oriented = 16 бит), а InputStream/OutputStream классы байто-ориентированны (byte oriented = 8 бит). 

Автор: po4emuchka 24.6.2008, 17:27
Спасибо за пояснение, а то для меня это оставалось загадкой.  smile  

Автор: inohodec 24.6.2008, 17:29
Пожалуйста smile

Рад был помочь smile

Автор: AlexMoney1985 5.6.2009, 12:43
подскажите какими методами можно работать в rtf файлами
можно примерчик
считываем файл(шаблон) находим #ClientName# заменяем на Иванов и сохраняем
исходный файл со всякими изощреними вещами тут и таблички и рисунки...

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)