如何在 java 中手动创建 doc/docx 文件
How to create doc/docx file manually in java
我在 java 中创建了一个纯字符串的 docx 文件。
当我将 docx 文件通过电子邮件发送到我的 phone 时,文件无法正常打开。
我的java代码是:
// creating a docx file
File wordFile = new File("myDocFile.docx");
wordFile.createNewFile();
String title = "my document title here";
String content = "my document content here";
// docx file content with Html
String fileStr = "<!DOCTYPE html><meta http-equiv=\"content-type\" " +
" content=\"application/msword; charset=UTF-8\">" +
"<h1 style='text-align:center;'>" + title+ "</h1>" + content;
// writing fileStr in to docx file.
Files.write(wordFile.toPath(), fileStr.getBytes("UTF-8"),
StandardOpenOption.TRUNCATE_EXISTING);
我创建的 docx 文件无法在智能 phone 中打开。
我怎样才能让 docx 在智能 phone 中阅读?
这里有两个简单的误解:
- 当然,docx 有 打开 XML 内容,但您仍然不应该尝试 手动 创建此类文件,使用合理的库,比如apache POI。说真的:你从一个简单的 "body" 开始,但任何在现实世界中有用的东西都会增长。您的需求会很快变得更加复杂,然后您会花费大量时间重新实现这些库为您做的事情。重新发明轮子是昂贵的,特别是考虑到 你的 轮子与任何成熟的库相比真的很糟糕。
- 我怎样才能让 docx 在每个智能手机上都能阅读 phone? 你不能。你没有控制世界上的"every"智能phone,因此你不能强制接收你的docx的人能够查看它。
长话短说:您的整个方法看起来 "broken by design"。许多人真的不喜欢被发送 "office" 文件(出于安全原因)。
因此,真正的答案是:退后一步,评估您想要 "send out" 的信息类型,然后找出真正 对您的所有工作 有用的方法用户。
当您已经在向他们发送电子邮件时,请考虑将一些好的旧纯文本放入其中。一般而言:发送带有附件的电子邮件是一种 极好的 方式来惹恼您的用户。这应该是你最后的选择,而不是你的第一个。
我在 java 中创建了一个纯字符串的 docx 文件。 当我将 docx 文件通过电子邮件发送到我的 phone 时,文件无法正常打开。
我的java代码是:
// creating a docx file
File wordFile = new File("myDocFile.docx");
wordFile.createNewFile();
String title = "my document title here";
String content = "my document content here";
// docx file content with Html
String fileStr = "<!DOCTYPE html><meta http-equiv=\"content-type\" " +
" content=\"application/msword; charset=UTF-8\">" +
"<h1 style='text-align:center;'>" + title+ "</h1>" + content;
// writing fileStr in to docx file.
Files.write(wordFile.toPath(), fileStr.getBytes("UTF-8"),
StandardOpenOption.TRUNCATE_EXISTING);
我创建的 docx 文件无法在智能 phone 中打开。 我怎样才能让 docx 在智能 phone 中阅读?
这里有两个简单的误解:
- 当然,docx 有 打开 XML 内容,但您仍然不应该尝试 手动 创建此类文件,使用合理的库,比如apache POI。说真的:你从一个简单的 "body" 开始,但任何在现实世界中有用的东西都会增长。您的需求会很快变得更加复杂,然后您会花费大量时间重新实现这些库为您做的事情。重新发明轮子是昂贵的,特别是考虑到 你的 轮子与任何成熟的库相比真的很糟糕。
- 我怎样才能让 docx 在每个智能手机上都能阅读 phone? 你不能。你没有控制世界上的"every"智能phone,因此你不能强制接收你的docx的人能够查看它。
长话短说:您的整个方法看起来 "broken by design"。许多人真的不喜欢被发送 "office" 文件(出于安全原因)。
因此,真正的答案是:退后一步,评估您想要 "send out" 的信息类型,然后找出真正 对您的所有工作 有用的方法用户。
当您已经在向他们发送电子邮件时,请考虑将一些好的旧纯文本放入其中。一般而言:发送带有附件的电子邮件是一种 极好的 方式来惹恼您的用户。这应该是你最后的选择,而不是你的第一个。