Я хочу загрузить файл JSON из папки с именем saveFiles (в том же каталоге, что и файл nw.exe и файл package.json (файл манифеста)).Проблема в том, что программа в настоящее время сохраняет файл JSON в C:\Users\userName\AppData\Local\appName\User Data\Default folder
.Я не могу понять, как изменить папку назначения.Я прочитал, что могу изменить его, изменив значение "chromium-args": "--data-path=''
в файле manifest package.json.Но я не знаю, какое значение мне нужно использовать, чтобы оно работало.В настоящее время package.json выглядит следующим образом:
{
"main": "index.html",
"name": "appName",
"chromium-args": "--data-path='./saveFiles/'",
"window":
{
"toolbar": true,
"width": 1600,
"height": 900,
"min_width": 1000,
"min_height": 500,
"fullscreen": true,
"title":"App Name"
}
}
Я пробовал несколько вариантов, чтобы заставить его работать: --data-path='./saveFiles/'
, --data-path='/saveFiles/'
, --data-path='saveFiles/'
, но ничего не получилось.Мой формат неверный?Должен ли я использовать что-то отличное от "chromium-args": "--data-path=''"?
Есть ли другой способ изменить папку / папку для сохранения?Я не знаю, как изменить его, чтобы он работал.
Дополнительная информация:
При сохранении файла JSON я использую следующий код:
var fs = require('fs');
var path = require('path');
function saveSettings (settings, callback) {
var file = 'testSave.json';
var filePath = path.join(nw.App.dataPath, file);
fs.writeFile(filePath, settings, function (err) {
if (err) {
console.info("There was an error attempting to save your data.");
console.warn(err.message);
return;
} else if (callback) {
callback();
}
});
}
var mySettings = {
color:'red',
secondaryColor:'blue'
}
mySettings = JSON.stringify(mySettings);
saveSettings(mySettings, function () {
console.log('Settings saved');
});
Это работает для сохранения файла в папке C: \ Users \ userName \ AppData \ Local \ appName \ User Data \ Default, но я хочу сохранить его в папке saveFiles (в том же месте, что и файл манифеста (package.JSON).) и файл nw.exe (который находится в той же папке, что и package.json)).
Функция загрузки для загрузки файла JSON выглядит следующим образом:
function testLoadFunc(){
path = require('path');
var xmlhttp = new XMLHttpRequest();
var url = "saveFiles/testSave.json";
xmlhttp.onreadystatechange = function() {
if (this.readyState == 4 && this.status == 200) {
var loadedSettings = JSON.parse(this.responseText);
console.log('color: ' + loadedSettings.color);
}
};
xmlhttp.open("GET", url, true);
xmlhttp.send();
}
testLoadFunc(); //Loads json file
Это загружаетфайл правильно, но я должен вручную поместить файл testSave.json в папку saveFiles.Я хочу автоматически сохранить testSave.json в папке saveFiles.Таким образом, я пытаюсь выяснить, как изменить папку сохранения / каталог.
Альтернативным вариантом будет выяснить, как загрузить файл из текущего местоположения сохранения C:\Users\userName\AppData\Local\appName\User Data\Default
, но я не знаю, каксделать это тоже.Предпочтительным вариантом будет просто изменить место сохранения в папку saveFiles.
Спасибо за любую помощь, которую вы можете предоставить.