質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
Electron

Electronは、HTML5とNode.jsというWebの技術を用いてデスクトップアプリケーションを作成できるクロスプラットフォームな実行環境です。

Node.js

Node.jsとはGoogleのV8 JavaScriptエンジンを使用しているサーバーサイドのイベント駆動型プログラムです。

JavaScript

JavaScriptは、プログラミング言語のひとつです。ネットスケープコミュニケーションズで開発されました。 開発当初はLiveScriptと呼ばれていましたが、業務提携していたサン・マイクロシステムズが開発したJavaが脚光を浴びていたことから、JavaScriptと改名されました。 動きのあるWebページを作ることを目的に開発されたもので、主要なWebブラウザのほとんどに搭載されています。

HTML

HTMLとは、ウェブ上の文書を記述・作成するためのマークアップ言語のことです。文章の中に記述することで、文書の論理構造などを設定することができます。ハイパーリンクを設定できるハイパーテキストであり、画像・リスト・表などのデータファイルをリンクする情報に結びつけて情報を整理します。現在あるネットワーク上のほとんどのウェブページはHTMLで作成されています。

CSS

CSSはXMLやHTMLで表現した色・レイアウト・フォントなどの要素を指示する仕様の1つです。

Q&A

解決済

1回答

2584閲覧

Javascript テキストファイルの書き出し Electronにて

fama

総合スコア105

Electron

Electronは、HTML5とNode.jsというWebの技術を用いてデスクトップアプリケーションを作成できるクロスプラットフォームな実行環境です。

Node.js

Node.jsとはGoogleのV8 JavaScriptエンジンを使用しているサーバーサイドのイベント駆動型プログラムです。

JavaScript

JavaScriptは、プログラミング言語のひとつです。ネットスケープコミュニケーションズで開発されました。 開発当初はLiveScriptと呼ばれていましたが、業務提携していたサン・マイクロシステムズが開発したJavaが脚光を浴びていたことから、JavaScriptと改名されました。 動きのあるWebページを作ることを目的に開発されたもので、主要なWebブラウザのほとんどに搭載されています。

HTML

HTMLとは、ウェブ上の文書を記述・作成するためのマークアップ言語のことです。文章の中に記述することで、文書の論理構造などを設定することができます。ハイパーリンクを設定できるハイパーテキストであり、画像・リスト・表などのデータファイルをリンクする情報に結びつけて情報を整理します。現在あるネットワーク上のほとんどのウェブページはHTMLで作成されています。

CSS

CSSはXMLやHTMLで表現した色・レイアウト・フォントなどの要素を指示する仕様の1つです。

0グッド

0クリップ

投稿2016/03/21 09:44

お読み頂きましてありがとうございます!
現在、ElectronにてHTML+CSSで画面デザイン、動作面をJavascriptでソフトを制作しております。

この度、Javascriptにてツールがある場所と同じ場所にテキストファイルを書きだそうと思い、以下のような記述を行いました。

javascript

1var fs = require('fs'); 2fs.appendFile('Logdata.log', 'ログに出力する文字列');

このように記述する事で、デバッグの際には正常にLogdata.logが出力されました。

ここまでは良かったのですが、実際にパッケージ化したソフトを起動して同じ処理を行った場合にLogdata.logが出力されないという問題が起きておりまして困っております。

私自身がまだまだ知識が浅い為、自分なりに考える原因と致しましてはパスの指定方法が違うのかなと思っているのですが、なぜビルドした場合にLogdata.logが出力されないのか原因がわかるという方はいらっしゃいますでしょうか?

是非お力添え頂ければ嬉しく思います。
どうぞ、よろしくお願い致します。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答1

0

ベストアンサー

思いつきですが・・・
書けない場所に書き出そうとしていないですかね。フルパスでファイル名を指定し直してみるとか、どうでしょうか。
あと、パッケージ化すると開発者ツールは表示できないのですか。表示できれば、解決の手がかりが得られそうな気がしますが。

投稿2016/03/21 12:43

tohshima

総合スコア374

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

fama

2016/03/21 18:43

var path = require('path'); var abspath = path.resolve("mail.txt"); var fs = require('fs'); fs.writeFile(abspath,"aaa"); このようにして絶対パスを取得してみたのですが、結果は変わらずという状態でございます 涙
tohshima

2016/03/23 11:18

シンプルなサンプルを作って試してみました。 [package.json] ``` { "name": "sample", "version": "0.0.0", "description": "サンプル", "main": "main.js", "scripts": { "test": "echo \"Error: no test specified\" && exit 1" }, "repository": { "type": "git", "url": "git@github.com:Sample/sample.git" }, "author": "tohshima", "license": "MIT", "bugs": { "url": "https://github.com/Sample/sample/issues" } } ``` [index.html] ``` <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title>Sample</title> </head> <body> <p>Hello World</p> <script> var fs = require('fs'); fs.appendFile('Logdata.log', 'ログに出力する文字列'); </script> </body> </html> ``` [main.js] ``` 'use strict'; // アプリケーションをコントロールするモジュール var app = require('app'); // ウィンドウを作成するモジュール var BrowserWindow = require('browser-window'); // メインウィンドウはGCされないようにグローバル宣言 var mainWindow = null; // 全てのウィンドウが閉じたら終了 app.on('window-all-closed', function() { if (process.platform != 'darwin') { app.quit(); } }); // Electronの初期化完了後に実行 app.on('ready', function() { // メイン画面の表示。ウィンドウの幅、高さを指定できる mainWindow = new BrowserWindow({width: 800, height: 600}); mainWindow.loadURL('file://' + __dirname + '/index.html'); // Open the DevTools. mainWindow.webContents.openDevTools(); // ウィンドウが閉じられたらアプリも終了 mainWindow.on('closed', function() { mainWindow = null; }); }); ``` そして、パッケージ化。 ``` electron-packager ./sample sample --platform=win32 --arch=x64 --version=0.36.1 --overwrite ``` そうすると「sample-win32-x64」フォルダの下に結果が得られるので、 エクスプローラーで「sample.exe」をダブルクリック。 すると、「sample.exe」と同じディレクトリに「Logdata.log」が得られました。 ・・・何が違うんでしょうね。
fama

2016/03/25 10:56

こちらありがとうございます! __dirnameを活用する事でかいけつを行う事が出来ました!ありがとうございます!
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問