2016-12-22 10 views
0

Я написал один javascript «meta.js» для получения метаданных из pdf-файла.Ошибка Node.js получения метаданных из pdf с использованием exiftool

Ниже моя программа,

var exif = require('exiftool'); 
var fs = require('fs'); 

fs.readFile('Sample.pdf', function (err, data) { 
    if (err) 
    throw err; 
    else { 
    exif.metadata(data, function (err, metadata) { 
     if (err) 
     throw err; 
     else 
     console.log(metadata); 
    }); 
    } 
}); 

Когда я "узел meta.js" становится ниже ошибки,

C: \ Users \ abhishek.suthar \ Downloads \ приложения узел> узел мета. js

events.js:85 
     throw er; // Unhandled 'error' event 
      ^
Error: write EPIPE 
    at exports._errnoException (util.js:746:11) 
    at Socket._writeGeneric (net.js:690:26) 
    at Socket._write (net.js:709:8) 
    at doWrite (_stream_writable.js:301:12) 
    at writeOrBuffer (_stream_writable.js:288:5) 
    at Socket.Writable.write (_stream_writable.js:217:11) 
    at Socket.write (net.js:634:40) 
    at Object.exports.metadata (C:\Users\abhishek.suthar\Downloads\node application\node_modules\exiftool\lib\exiftool.js:73:14) 
    at C:\Users\abhishek.suthar\Downloads\node application\meta.js:8:10 
    at fs.js:334:14 

Я установил необходимые модули, как вы можете видеть в моих путях регистрации ошибок.

ответ

-1

Бьюсь об заклад, вы не получаете данные из-за неправильного пути. Try:

var exif = require('exiftool'); 
var fs = require('fs'); 

fs.readFile('Sample.pdf', function (err, data) { 
    console.log("Received data: " + data) 

    if (err) 
    throw err; 
    else { 
    exif.metadata(data, function (err, metadata) { 
     if (err) 
     throw err; 
     else 
     console.log(metadata); 
    }); 
    } 
}); 

Как я получить правильный путь:

const path = require('path') 

path.join(__dirname, "./someFile.pdf") 

Другой подход, чтобы проверить путь, чтобы выполнить fs.stat.

И позвольте мне дать один совет: Не сомневайтесь, используя варианты синхронизации методов, поскольку асинхронный подход не требуется. Зачем компилировать вещи. См.: fs.readFileSync и fs.statSync.

+0

Я получаю полные данные .... полный файл pdf, напечатанный в console.I использую версию узла 0.12.7. –

+0

Путь прямо здесь, что-то еще не так ... –

+0

Ну, я могу предложить только ответы на вопросы репозитория github. Пример стартера выглядит точно так же, как ваш. – Lazyexpert

 Смежные вопросы

  • Нет связанных вопросов^_^