Я делаю сценарий, в котором я пытаюсь сохранить и восстановить некоторые объекты внутри массива.Но не мог заставить его работать.Кроме того, я не уверен, что если я на правильном пути или есть лучший способ сделать это.На данный момент я пытаюсь сохранить весь объект по частям.
Сеть нейролов имеет информацию и матрицы внутри, эти матрицы имеют 2D массив внутри.
Есть ли способ сохранить всеза один раз, и я делаю это сложным?
Я пробовал некоторые вещи, такие как:
$this | Export-CSV -Path $Path1
$this.matrix1 | Export-CSV -Path $Path2
$this.matrix1.data | % { $_ -join ','} | out-file $Path3
Но это не дает все данные, которые мне нужно хранить (особенномассив в $ this.matrix1.data) Кто-нибудь знает, что я делаю неправильно, или знает, что лучше?И если да, то как мне вернуть его обратно в $ nn2?
class Matrix {
[int]$some_info11
[int]$some_info21
[int]$some_info31
$data
Matrix($int){
$this.some_info11 = 1
$this.some_info21 = 12
$this.some_info31 = 123
$row = 4
$col = 12
$temp_array = New-Object 'object[,]' $row , $col
for ($i=0;$i -le $row -1 ; $i++) {
for ($j=0;$j -le $col -1 ; $j++) {
$temp_array[$i,$j] = Get-Random -Maximum 1.0 -Minimum -1.0
}
}
$this.data = $temp_array
}
}
class NeurolNetwork{
$matrix1
[int]$some_info1
[int]$some_info2
[int]$some_info3
NeurolNetwork($inp){
$this.some_info1 = 1
$this.some_info2 = 12
$this.some_info3 = 123
$this.matrix1 = [Matrix]::New($inp)
}
export([string]$dir){
$Path1 = "C:\test\" + $dir + "\nn.txt"
$Path2 = "C:\test\" + $dir + "\nn_matrix.csv"
$Path3 = "C:\test\" + $dir + "\nn_matrix_data.csv"
$this | Export-CSV -Path $Path1
$this.matrix1 | Export-CSV -Path $Path2
$this.matrix1.data | % { $_ -join ','} | out-file $Path3
}
}
Function get_nn([string]$dir){
# get files from directory and create a new [NeurolNetwork]
}
$nn1 = [NeurolNetwork]::New(12)
$nn1.export("temp_dir")
$nn2 = get_nn("temp_dir")