我需要读取文件(.doc)然后替换doc中的一些数据然后发送到print(doc或pdf)。
在第一步,我尝试从文档中读取数据。来自.txt的工作,但来自.doc no :(
我在jsfiddle http://jsfiddle.net/qo0fxo50/
中做了一些例子我尝试这样做:
<h1>Select file</h1>
<input type="file" on-read-file="showContent($fileContent)" />
<div>
<h2>File content is:</h2>
<pre>{{ contentfile }}</pre>
</div>
和指令(on-read-file):
directives.directive('onReadFile', function ($parse) {
return {
restrict: 'A',
scope: false,
link: function(scope, element, attrs) {
var fn = $parse(attrs.onReadFile);
element.on('change', function(onChangeEvent) {
var reader = new FileReader();
reader.readAsText((onChangeEvent.target).files[0], 'CP1251');
reader.onload = function(onLoadEvent) {
scope.$apply(function() {
fn(scope, {$fileContent:onLoadEvent.target.result});
});
};
});
}
};
});
我在jsfiddle http://jsfiddle.net/qo0fxo50/
中做了一些例子答案 0 :(得分:3)
.doc是一种专有的二进制格式(也有多个不兼容的版本)。 这意味着它是一堆未记录的字节而不是像.txt一样的字符串。
除非您了解该格式的详细信息或找到可帮助您阅读的库,否则您将无法获得任何信息。我建议将'.doc-contents自动化为你可以解析的东西 - 用工具进行转换(应该有一些东西,但不要考虑准确的结果),或者更好的是不要使用.doc。
至于新的.docx格式,它应该更容易获取内容,因为它们基本上是.xml。