{"id":20713850,"url":"https://github.com/diffplug/matfilerw","last_synced_at":"2025-04-23T08:08:34.873Z","repository":{"id":57718790,"uuid":"43794907","full_name":"diffplug/matfilerw","owner":"diffplug","description":"Read and write MATLAB MAT-files from Java, forked from JMatIO","archived":false,"fork":false,"pushed_at":"2018-12-28T19:48:00.000Z","size":8335,"stargazers_count":59,"open_issues_count":3,"forks_count":13,"subscribers_count":9,"default_branch":"master","last_synced_at":"2025-04-23T08:08:29.209Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"","language":"Java","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"other","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/diffplug.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGES.md","contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE","code_of_conduct":"CODE_OF_CONDUCT.md","threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2015-10-07T04:23:06.000Z","updated_at":"2024-04-02T07:27:55.000Z","dependencies_parsed_at":"2022-09-26T21:40:29.018Z","dependency_job_id":null,"html_url":"https://github.com/diffplug/matfilerw","commit_stats":null,"previous_names":[],"tags_count":11,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/diffplug%2Fmatfilerw","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/diffplug%2Fmatfilerw/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/diffplug%2Fmatfilerw/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/diffplug%2Fmatfilerw/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/diffplug","download_url":"https://codeload.github.com/diffplug/matfilerw/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":250395288,"owners_count":21423400,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-11-17T02:27:39.919Z","updated_at":"2025-04-23T08:08:34.853Z","avatar_url":"https://github.com/diffplug.png","language":"Java","readme":"## MatFileRW is not abandoned, but we recommend migrating to [HebiRobotics/MFL](https://github.com/HebiRobotics/MFL)\n\nMatFileRW will continue to accept bug reports and PRs.  However, we recommend starting new projects with [HebiRobotics/MFL](https://github.com/HebiRobotics/MFL) because it:\n\n- has every testcase from MatFileRW and more\n- has a cleaner and more modern codebase\n- supports concurrent compression and decompression\n- is designed for interoperability with native-Java matrix manipulation\n- has optional [EJML](https://ejml.org) integration\n\nBesides the effort to learn the new API, there are no downsides and quite a few upsides.   Migrating a project is a big job, so we will continue to accept bug reports and PR's for MatFileRW to support those who don't choose to migrate.\n\n# \u003cimg align=\"left\" src=\"matfilerw.png\"\u003e MatFileRW: Read and write MATLAB MAT-files from Java\n\n\u003c!---freshmark shields\noutput = [\n\tlink(shield('Maven artifact', 'mavenCentral', '{{group}}:{{name}}', 'blue'), 'https://bintray.com/{{org}}/opensource/{{name}}/view'),\n\tlink(shield('Latest version', 'latest', '{{stable}}', 'blue'), 'https://github.com/{{org}}/{{name}}/releases/latest'),\n\tlink(shield('Javadoc', 'javadoc', 'OK', 'blue'), 'https://{{org}}.github.io/{{name}}/javadoc/{{stable}}/'),\n\tlink(shield('License Apache', 'license', 'BSD', 'blue'), 'https://tldrlegal.com/license/bsd-3-clause-license-(revised)'),\n\t'',\n\tlink(shield('Changelog', 'changelog', '{{version}}', 'brightgreen'), 'CHANGES.md'),\n\tlink(image('Travis CI', 'https://travis-ci.org/{{org}}/{{name}}.svg?branch=master'), 'https://travis-ci.org/{{org}}/{{name}}')\n\t].join('\\n');\n--\u003e\n[![Maven artifact](https://img.shields.io/badge/mavenCentral-com.diffplug.matsim%3Amatfilerw-blue.svg)](https://bintray.com/diffplug/opensource/matfilerw/view)\n[![Latest version](https://img.shields.io/badge/latest-3.1.1-blue.svg)](https://github.com/diffplug/matfilerw/releases/latest)\n[![Javadoc](https://img.shields.io/badge/javadoc-OK-blue.svg)](https://diffplug.github.io/matfilerw/javadoc/3.1.1/)\n[![License Apache](https://img.shields.io/badge/license-BSD-blue.svg)](https://tldrlegal.com/license/bsd-3-clause-license-(revised))\n\n[![Changelog](https://img.shields.io/badge/changelog-3.2.0--SNAPSHOT-brightgreen.svg)](CHANGES.md)\n[![Travis CI](https://travis-ci.org/diffplug/matfilerw.svg?branch=master)](https://travis-ci.org/diffplug/matfilerw)\n\u003c!---freshmark /shields --\u003e\n\nMatFileRW is a library which allows reading and writing MAT files.  Have a look at [MatIOTest.java](https://github.com/diffplug/matfilerw/blob/master/src/test/java/com/jmatio/io/MatIOTest.java) to see each part in use.\n\nAs far as compatibility, the TL;DR is that it will work with any MAT-File with default settings.  The dirty details are that this library works with `v6` and `v7`, but not `v4` or `v7.3`.\n\n* v4 is the default format before R8\n* v6 is the default format from R8 to R13\n* v7 is the default format from R14 to present (every R20XXX release)\n* MATLAB does not export to v7.3 by default.\n* The [Mathworks website](http://www.mathworks.com/help/matlab/import_export/mat-file-versions.html?refresh=true) has more details.\n\n## codemercenary/jmatio and ca.mjdsystems.jmatio\n\nSince JMatIO wasn't updated for a while, lots of people made forks.  One of the most prominent was Jason Lokerson's, hosted on GitHub as codemercenary/JMatIO.  It included several improvements, but all the packages were renamed to `ca.mjdsystems.jmatio`.  Starting with 2.0.0, all of the improvements from MatFileRW and `ca.mjdsystems.jmatio` have been merged into the `com.jmatio` packages.\n\nIf you are a user of the `ca.mjdsystems` packages, you should download `com.diffplug.matsim:matfilerw:2.0.0.TRANSITION` from mavenCentral.  This contains the `ca.mjdsystems.jmatio` packages unchanged, but marked as deprecated.  After you have removed all dependencies on the `ca.mjdsystems.jmatio` packages, you will be able to use the regular `2.0.0` version, and its descendants.\n\n## Acknowledgements\n\nThis project is forked from the JMatIO project originally maintained on [SourceForge](http://sourceforge.net/projects/jmatio/), and now maintained on [GitHub](https://github.com/gradusnikov/jmatio).  The name was changed to ensure that we don't infringe the original project's license, but we did not change the package names, so this project is binary compatible with the original JMatIO.  We are very thankful to Wojciech Gradkowski for creating JMatIO, but this fork is in no way associated with or endorsed by any authors of the original project.\n\nWe have fixed some bugs and added some features (see the [changelog](CHANGES.md)), and we will maintain this library into the future.  We're happy to accept [pull requests](CONTRIBUTING.md) too!\n\nPeople whose commits are included in this project\n* Original JMatIO project credit to Wojciech Gradkowski\n* Thanks to Tim Ryan for [finding and fixing](https://github.com/diffplug/matfilerw/pull/9) a multidimensional indexing bug.\n* MLSparse improvements credit to Sina Samangooei\n* Reading from streams credit to Jonathan Hare\n* MCOS and Simulink MAT-File parsing by Matthew Dawson\n* Further MCOS fixes thanks to Piotr Smolinski\n* int32 writing by Gabriel Shubiner\n* ZLIP EOF Exception fix by David Williams\n* Integration work by Jason Lokerson\n* Multidimensional array indexing by Mikael Grev\n* AbstractIterator taken from Google's Guava\n\nTools used by this project\n* Formatted by [spotless](https://github.com/diffplug/spotless), [as such](https://github.com/diffplug/matfilerw/blob/v1.3.1/build.gradle?ts=4#L129-L149).\n* Bugs found by [findbugs](http://findbugs.sourceforge.net/), [as such](https://github.com/diffplug/matfilerw/blob/v1.3.1/build.gradle?ts=4#L151-L175).\n* OSGi metadata generated by [Goomph](https://github.com/diffplug/goomph), which leverages Peter Kriens' [bnd](http://www.aqute.biz/Bnd/Bnd).\n* Built by [gradle](http://gradle.org/).\n* Tested by [junit](http://junit.org/).\n* Maintained by [DiffPlug](http://www.diffplug.com/).\n","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdiffplug%2Fmatfilerw","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fdiffplug%2Fmatfilerw","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdiffplug%2Fmatfilerw/lists"}