سؤال

لدي بعض البيانات التي أود حفظها في ملف حصيرة (الإصدار 4 أو 5 ، أو أي إصدار ، لهذه المسألة). الصيد: أردت القيام بذلك دون استخدام مكتبات MATLAB ، لأن هذا الرمز لن يتم تشغيله في جهاز مع MATLAB. يستخدم برنامجي Java و C ++ ، لذلك أي مكتبة موجودة بتلك اللغات التي تحقق ذلك يمكن أن تساعدني ...

قمت ببعض الأبحاث لكنني لم أجد أي شيء في Java/C ++. ومع ذلك ، وجدت أن Scipy on Python يحقق هذا مع mio4.py أو mio5.py. فكرت في تنفيذ هذا على Java أو C ++ ، لكن يبدو أنه خارج جدول زمني قليلاً.

لذا فإن السؤال هو: هل هناك أي مكتبات في Java أو C/C ++ تسمح بحفظ ملفات MAT دون استخدام مكتبات MATLAB؟

شكرًا جزيلاً

هل كانت مفيدة؟

المحلول

ج: ماتيو
جافا: JMatio
(أنا أميل حقًا إلى ذلك ، لذلك سأخبرك أن تتعلم Google)

ولكن في الحقيقة ، ليس من الصعب كتابة Matfiles باستخدام fwrite إذا لم تكن بحاجة إلى التعامل مع بعض الأشياء الأكثر تعقيدًا (الهياكل المتداخلة ، والفئات ، والوظائف ، والمصفوفة المتفرقة ، إلخ).
نرى: http://www.mathworks.com/access/helpdesk/help/pdf_doc/matlab/matfile_format.pdf

نصائح أخرى

ملفات MAT منذ الإصدار 7 تعتمد على HDF5. أتذكر أنهم يستخدمون بعض الاتفاقيات المضحكة إلى حد ما ، لكنك قد تكون قادرًا على عكس هندسة ما تحتاجه. هناك بالتأكيد مكتبات كتابة HDF5 لكل من Java و C ++.

على طول هذه الخطوط ، يمكن لـ Matlab قراءة/كتابة العديد من التنسيقات القياسية ، بما في ذلك HDF5. قد يكون من الأسهل كتابة بياناتك في HDF5 "القياسية" وقراءتها في بنية البيانات المطلوبة داخل MATLAB.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top