2016-08-17 6 views
-1

%AppData%の.jsonファイルに永続的なメモリ(ユーザーの進捗状況を保存したい)を保持します。私はこの投稿をthisの投稿に従って行ってみましたが、うまくいきません。テスト目的のために、私は1つのオブジェクトを格納することで作業しています。ノードWebkitのJSONファイルに書き込み/追加できません

以下のコードはまったく機能しません。 readFile(...の代わりにfs.open(filePath, "w", function(err, data) { ...を使用すると、%AppData%にjsonファイルが作成されますが、何も書き込まれません。常に0バイトです。

var nw = require('nw.gui'); 
var fs = require('fs'); 
var path = require('path'); 

var file = "userdata.json"; 

var filePath = path.join(nw.App.dataPath, file); 

console.log(filePath); // <- This shows correct path in Application Data. 

fs.readFile(filePath ,function (err, data) { 
var idVar = "1"; 
var json = JSON.parse(data); 
json.push("id :" + idVar); 
fs.writeFile(filePath, JSON.stringify(json)); 
}); 

誰もが、私はこれをめちゃくちゃにしています任意のアイデアを持っている場合、私は感謝されると思います。..

EDIT:

は、kailnirisのおかげで解決しました。

私は単にあなたが読んしようとするファイルには、JSONはありません空のファイル

+0

バックグラウンドページコンソールでエラーをチェックしてください。ノードのコンテキストエラーがログに記録されます。ウィンドウを右クリックし、背景ページを調べます。 – kailniris

+0

未知のSyntaxError:JSON入力の予期しない終了 – angularchobo

+0

どの行ですか?あなたのjsonに何か問題があるか、空のデータをjsonとして解析したいと思っています。 Console.log(data)を解析する前に – kailniris

答えて

0

を解析しようとしていました。データを解析する前に、ファイルが空であるかどうかを確認してください。空のjsonを作成する場合は、新しいデータをそのファイルにプッシュし、それをファイルに書き込むか、ファイル内のjsonを解析します。

関連する問題