0

尝试从 JSON 加载网络会导致以下错误

错误:必须在初始化之前设置大小。

我的js代码:

let brain = require('brain.js');
let fs = require('fs');
let fileContent = fs.readFileSync("network.j
son", "utf8");
const net = new brain.NeuralNetwork();
console.log(fileContent);
net.fromJSON(fileContent);
console.log(net.run([1,0]));

如果我只是要求将 json 输出到控制台,那么一切正常,如果我在代码中创建

let json = {...};

一切正常,但是当我尝试从 Json 文件加载时,出现错误 控制台图像]

4

1 回答 1

0

fs.readFileSync 根据 https://nodejs.org/api/fs.html#fs_fs_readfilesync_path_options返回一个字符串

fs.readFileSync(path[, options])#

路径字符串 | 缓冲 | 网址 | 整数文件名或文件描述符

选项对象 | 细绳

编码字符串 | 空 默认值:空

返回:字符串 | 缓冲

因此,在使用例如之前,您需要传递您的fileContenttoJSON.parse以解析您的 JSON 字符串、结果 fromfs.readFileSync到 JavaScript 值或对象。net.fromJSON


let fileContent = fs.readFileSync("network.json", "utf8");
let fileContentJSON = JSON.parse(fileContent);
const net = new brain.NeuralNetwork();

net.fromJSON(fileContentJSON);

于 2020-02-02T09:35:42.517 回答