Сохранение информации о типе структур данных - PullRequest
2 голосов
/ 28 ноября 2011

Я строю основу для своих повседневных задач. Я программирую в Scala, используя много параметров типа.

Теперь моя цель - сохранить структуры данных в файлы (например, XML-файлы). Но я понял, что это невозможно с использованием XML-файлов. Поскольку я новичок в такого рода проблемах, я спрашиваю:

Есть ли способ сохранить типы моих структур данных в файле ??? Есть ли способ в скале ???

1 Ответ

4 голосов
/ 28 ноября 2011

Хорошо, ребята.В основном вы проделали большую работу, назвав то, что я искал.

Его сериализацию.

Имея это в виду, я искал в Интернете и был полностью удивлен этой функцией Java.Теперь я делаю что-то вроде:

object Serialize {

  def write[A](o: A): Array[Byte] = {
    val ba = new java.io.ByteArrayOutputStream(512)
    val out = new java.io.ObjectOutputStream(ba)
    out.writeObject(o)
    out.close()
    ba.toByteArray()
  }

  def read[A](buffer: Array[Byte]): A = {
    val in = new java.io.ObjectInputStream(new java.io.ByteArrayInputStream(buffer))
    in.readObject().asInstanceOf[A]
  }
}

Полученные байтовые массивы могут быть записаны в файл, и все работает хорошо.

И я в полном порядке, что это решение не читается человеком.Если мой разум когда-нибудь изменится.Есть JSON-парсер по всей сети.

...