diff --git a/lib/file.js b/lib/file.js index f312531..707545a 100644 --- a/lib/file.js +++ b/lib/file.js @@ -171,6 +171,20 @@ function loadEnvFromArgs(args, callback) { } } +function isAbsolutePath(path) { + if (typeof path !== "string") + return false; + + path = path.replace(/^\s+/, "").replace(/\s+$/, ""); + + if (path.charAt(0) === "\uFEFF") + path = path.slice(1); + + return (/^[a-zA-Z]:[\\/]/).test(path) || + (/^[\\/]{2,}/).test(path) || + (/^\//).test(path); +}; + exports.fileExists = fileExists; exports.folderExists = folderExists; exports.fileGet = fileGet; @@ -187,10 +201,11 @@ exports.appendFile = appendFile; exports.rotateFile = rotateFile; exports.loadEnvFromFile = loadEnvFromFile; exports.loadEnvFromArgs = loadEnvFromArgs; +exports.isAbsolutePath = isAbsolutePath; exports.CdoCharset = PipeIPC.CdoCharset; -exports.VERSIONINFO = "File IO Library (file.js) version 0.2.15"; +exports.VERSIONINFO = "File IO Library (file.js) version 0.2.16"; exports.AUTHOR = "gnh1201@catswords.re.kr"; exports.global = global; exports.require = global.require; diff --git a/lib/msoffice.js b/lib/msoffice.js index d33ff33..eb7c738 100644 --- a/lib/msoffice.js +++ b/lib/msoffice.js @@ -23,7 +23,7 @@ function Excel() { this.open = function(filename) { if (typeof filename !== "undefined") { // check type of the path - if (filename.indexOf(":\\") < 0 && filename.indexOf(":/") < 0) { + if (!FILE.isAbsolutePath(filename)) { filename = SYS.getCurrentWorkingDirectory() + "\\" + filename; // get absolute path } if (FILE.fileExists(filename)) { @@ -227,7 +227,7 @@ exports.Excel = Excel; exports.PowerPoint = PowerPoint; exports.Word = Word; -exports.VERSIONINFO = "Microsoft Office interface (msoffice.js) version 0.2.1"; +exports.VERSIONINFO = "Microsoft Office interface (msoffice.js) version 0.2.2"; exports.AUTHOR = "gnh1201@catswords.re.kr"; exports.global = global; exports.require = global.require;