问题描述
我使用RTFEditorKit找到了许多“如何RTF->纯文本”,但是没有一个“纯文本-> rtf”。 我不会手动执行此操作,因为就我而言,我们必须将超过128个字符的所有字符都转换为十六进制字符串,以获取正确的RTF文件。我想用一些库来做。
我正在尝试使用RTFEditorKit:
<!DOCTYPE html>
<html lang="en" dir="ltr">
<head>
<Meta charset="utf-8">
<link rel="stylesheet" href="index.css">
<title></title>
</head>
<body>
<img src="https://upload.wikimedia.org/wikipedia/commons/thumb/e/e9/Check_mark.svg/28px-Check_mark.svg.png" alt="image" class="hidden">
<button type="picture" id="button">Click Me</button>
<script src="index.js" charset="utf-8"></script>
</body>
</html>
但是无法将纯文本读取到Document对象中。
解决方法
我不确定我能否查明代码中哪里出了问题,但这对我有用。我将字符串插入Document
:
String orig = "Hello Привет こんにちは";
RTFEditorKit rtfParser = new RTFEditorKit();
javax.swing.text.Document doc = rtfParser.createDefaultDocument();
doc.insertString(0,orig,null);
int docLen = doc.getLength();
OutputStream os = Files.newOutputStream(Paths.get("test.rtf"),StandardOpenOption.CREATE);
rtfParser.write(os,doc,docLen);