JavaScript 用于在客户端读取 doc 和 docx 的库
JavaScript library to read doc and docx on client
我正在搜索 JavaScript 库,它可以读取 .doc
- 和 .docx
- 文件。焦点仅在文本内容上。我对 MS-Word 文件中的图片、公式或其他特殊结构不感兴趣。
如果库与 JavaScript FileReader 一起使用,如以下代码所示,那就太好了。
function readExcel(currfile) {
var reader = new FileReader();
reader.onload = (function (_file) {
return function (e) {
//here should the magic happen
};
})(currfile);
reader.onabort = function (e) {
alert('File read canceled');
};
reader.readAsBinaryString(currfile);
}
我通过互联网搜索,但找不到我要找的东西。
你可以为此使用docxtemplater(即使通常用于模板,它也可以只获取文档的文本):
var zip = new JSZip(content);
var doc=new Docxtemplater().loadZip(zip)
var text= doc.getFullText();
console.log(text);
有关安装信息,请参阅 the Doc(我是该项目的维护者)
但是,它只处理 docx,不处理 doc
现在您可以从 doc/docx 中提取文本内容而无需安装外部依赖项。
您可以使用名为 any-text
的节点库
目前,它支持多种文件扩展名,如 PDF、XLSX、XLS、CSV 等
用法很简单:
- 将库安装为依赖项 (/dev-dependency)
npm i -D any-text
- 利用
getText
方法读取文本内容
var reader = require('any-text');
reader.getText(`path-to-file`).then(function (data) {
console.log(data);
});
- 您也可以使用
async/await
表示法
var reader = require('any-text');
const text = await reader.getText(`path-to-file`);
console.log(text);
样本测试
var reader = require('any-text');
const chai = require('chai');
const expect = chai.expect;
describe('file reader checks', () => {
it('check docx file content', async () => {
expect(
await reader.getText(`${process.cwd()}/test/files/dummy.doc`)
).to.contains('Lorem ipsum');
});
});
希望对您有所帮助!
我正在搜索 JavaScript 库,它可以读取 .doc
- 和 .docx
- 文件。焦点仅在文本内容上。我对 MS-Word 文件中的图片、公式或其他特殊结构不感兴趣。
如果库与 JavaScript FileReader 一起使用,如以下代码所示,那就太好了。
function readExcel(currfile) {
var reader = new FileReader();
reader.onload = (function (_file) {
return function (e) {
//here should the magic happen
};
})(currfile);
reader.onabort = function (e) {
alert('File read canceled');
};
reader.readAsBinaryString(currfile);
}
我通过互联网搜索,但找不到我要找的东西。
你可以为此使用docxtemplater(即使通常用于模板,它也可以只获取文档的文本):
var zip = new JSZip(content);
var doc=new Docxtemplater().loadZip(zip)
var text= doc.getFullText();
console.log(text);
有关安装信息,请参阅 the Doc(我是该项目的维护者)
但是,它只处理 docx,不处理 doc
现在您可以从 doc/docx 中提取文本内容而无需安装外部依赖项。
您可以使用名为 any-text
的节点库目前,它支持多种文件扩展名,如 PDF、XLSX、XLS、CSV 等
用法很简单:
- 将库安装为依赖项 (/dev-dependency)
npm i -D any-text
- 利用
getText
方法读取文本内容
var reader = require('any-text');
reader.getText(`path-to-file`).then(function (data) {
console.log(data);
});
- 您也可以使用
async/await
表示法
var reader = require('any-text');
const text = await reader.getText(`path-to-file`);
console.log(text);
样本测试
var reader = require('any-text');
const chai = require('chai');
const expect = chai.expect;
describe('file reader checks', () => {
it('check docx file content', async () => {
expect(
await reader.getText(`${process.cwd()}/test/files/dummy.doc`)
).to.contains('Lorem ipsum');
});
});
希望对您有所帮助!