ElectronでOS固有のファイルパスを得る app.getPath()の出力まとめ

  • 39
    Like
  • 1
    Comment
More than 1 year has passed since last update.

ドキュメントにはふわっとしか載っていなかったのでここにまとめます。
https://github.com/atom/electron/blob/master/docs/api/app.md#appgetpathname

Electron v0.34.3

Windows

index.js
console.log(app.getPath('home'));      // -> C:\Users\【ユーザー名】
console.log(app.getPath('appData'));   // -> C:\Users\【ユーザー名】\AppData\Roaming
console.log(app.getPath('userData'));  // -> C:\Users\【ユーザー名】\AppData\Roaming\【パッケージ名】
console.log(app.getPath('temp'));      // -> C:\Users\【ユーザー名】\AppData\Local\Temp
console.log(app.getPath('exe'));       // -> 【実行している.exeのパス】
console.log(app.getPath('module'));    // -> 【実行している.exeのパス】
console.log(app.getPath('desktop'));   // -> エラー
console.log(app.getPath('documents')); // -> エラー
console.log(app.getPath('downloads')); // -> エラー
console.log(app.getPath('music'));     // -> エラー
console.log(app.getPath('pictures'));  // -> エラー
console.log(app.getPath('videos'));    // -> エラー

Mac

index.js
console.log(app.getPath('home'));      // -> /Users/【ユーザー名】
console.log(app.getPath('appData'));   // -> /Users/【ユーザー名】/Library/Application Support
console.log(app.getPath('userData'));  // -> /Users/【ユーザー名】/Library/Application Support/【パッケージ名】
console.log(app.getPath('temp'));      // -> /var/folders/df/w01nd66568g0ql8wdmcd21vr0000gn/T/
console.log(app.getPath('exe'));       // -> 【実行している.appのパス】/Contents/MacOS/Electron
console.log(app.getPath('module'));    // -> 【実行している.appのパス】/Contents/Frameworks/Electron Framework.framework/Versions/A/Electron Framework
console.log(app.getPath('desktop'));   // -> エラー
console.log(app.getPath('documents')); // -> エラー
console.log(app.getPath('downloads')); // -> エラー
console.log(app.getPath('music'));     // -> エラー
console.log(app.getPath('pictures'));  // -> エラー
console.log(app.getPath('videos'));    // -> エラー

...何故かdesktop以下はエラーに。