Запись двумерного массива в файл и чтение двумерного массива из файла с помощью Visual C++

Я новичок в C++. Я составил двумерный массив 680x680. И я пытался записать его в txt файл. К сожалению, я не могу регулярно писать двумерный массив по его размерам. Также я хочу прочитать двухмерный массив из txt файла. Мой код ниже. Не могли бы вы мне помочь?

/*Declaration 680 *680 multidimensional array*/
array< array< double >^ >^ arr = gcnew array< array< double >^ >(680);

for (j=0;j<arr->Length;j++){
  arr[j]=gcnew array<double>(680);}

 /*Write double array to file*/

FILE *OutFile = fopen("C:\\test.txt","w++");

for(n=0;n<=(N-1);n++){
  fprintf(OutFile,"\n ");
  for(k=0;k<=(N-1);k++){
      fprintf(OutFile,"\t %f ",dizi[n][k]);}}

fclose(OutFile);

/* Declaration array reading from file*/

array< array< double >^ >^ read = gcnew array< array< double >^ >(680);

for (j=0;j<read->Length;j++){
  read[j]=gcnew array<double>(680);}

/* reading array from file*/

FILE *InFile = fopen("C:\\test.txt","r");
double db;
for(n=0;n<=(N-1);n++){
  for(k=0;k<=(N-1);k++){
    fscanf(InFile,"\t %f ",&db);
    read[n][k]=db; }}
fclose(InFile);

С уважением...

Ответов (1)

Сейчас некогда подробно разбираться с этим, вы можете осмотреться (Google или SO), используя слова «сериализация» и «десериализация».


Позже : я ничего не визуализирую, поэтому я проигнорирую все, что связано с синтаксисом.

  1. Он компилируется?
  2. Если да, то работает ли он без сбоев?
  3. Если да, то смотрели ли вы напрямую на вывод? Это дает то, чего вы ожидаете?
  4. Использование fscanf для синтаксического анализа ввода сложно. Вы должны быть очень осторожны, чтобы символы пробелов совпадали. Смотри сюда. Самая большая проблема заключается в том, что вы пишете символы новой строки, но не позволяете вводить их.

Мой совет: не торопитесь, проверяйте, что происходит на каждом этапе, и сообщайте (отредактируйте вопрос), когда вы лучше понимаете, что может быть не так ...