Данные не записываются в файл без причины

В своей функции я хочу открыть вновь созданный файл и записать в него свои данные, следуя этим инструкциям. Вот мой код:

function writeDataToFile(newFile) {
    try {
        console.log("[Matin] writeDataToFile started...");
        if(newFile != null) {
            newFile.openStream('a', onOpenStream, function(error) {
                console.log("[Matin] Could not create the file.");
                console(error);
            }, "UTF-8");

            function onOpenStream(fs) {
                console.log("[Matin] New file is opened.");
                fs.write("Hello ---------- Data Goes Here ----------");
                fs.write(JSON.stringify(dataToFile));
                console.log("[Matin] this is the data to be written>>>\n" + JSON.stringify(dataToFile));
                fs.close();
                dataToFile = null;
                newFile = null;
                console.log("[Matin] Data is written into the file, and temporal variables are set to null.");
            };
        } else {
            console.log("[Matin] no file here to write into!...");
        }
        console.log("[Matin] writeDataToFile ended!!!");
    } catch (exception) {
        console.log("[Matin] [Exception] " + exception.message);
    }
}

и это журналы, которые я получаю от выполнения функции. Все выглядит хорошо

js/managers/exportManager.js (295) :[Matin] writeDataToFile started...
js/managers/exportManager.js (314) :[Matin] writeDataToFile ended!!!
js/managers/exportManager.js (303) :[Matin] New file is opened.
js/managers/exportManager.js (305) :[Matin] this is the data to be written>>>
[{"steps":null,"heartrate":null,"accelX":"-0.9709117078781128","accelY":"3.4513116836547852","accelZ":"8.347122440338135",...]
js/managers/exportManager.js (309) :[Matin] Data is written into the file, and temporal variables are set to null.

Но проблема в том, что когда я смотрю на файл, в него ничего не записывается! В файле нет данных. Даже не линия Hello ---------- Data Goes Here ----------, В чем может быть причина? Благодарю.


ОБНОВИТЬ
Функция работает отлично и файлы сохранены правильно. Однако необходимо перезапустить часы, чтобы вы могли читать файлы. В противном случае он покажет вам пустые файлы.

1 ответ

Я не знаю вашего конкретного случая прямо здесь, как и Тизена, но я надеюсь, что смогу помочь с этим моим анекдотом.

Права доступа к файлам: у меня была проблема до того, когда я разрабатывал систему на основе Linux, и пользователь, создавший файл, не был тем пользователем, которым выполнялась программа, поэтому у программы не было надлежащих разрешений на запись. У него были только разрешения на чтение. Поэтому оказалось, что все работает правильно, но на самом деле запись не выполнялась, поскольку у программы не было разрешений на запись в файл.

Другие вопросы по тегам