A .NET Standard wrapper around the PhysFS IO library
Go to file
Francesco Bertolaccini 10014d9b51 Updated license to 2017 2017-05-28 14:47:02 +02:00
SharpPhysFS Updated license to 2017 2017-05-28 14:47:02 +02:00
Test Updated license to 2017 2017-05-28 14:47:02 +02:00
UnitTests Updated license to 2017 2017-05-28 14:47:02 +02:00
.editorconfig Added .editorconfig 2017-04-12 20:03:44 +02:00
.gitattributes Initial commit to add default .gitIgnore and .gitAttribute files. 2016-01-27 18:57:32 +01:00
.gitignore Initial commit to add default .gitIgnore and .gitAttribute files. 2016-01-27 18:57:32 +01:00
CHANGELOG.md Updated license to 2017 2017-05-28 14:47:02 +02:00
LICENSE.md Updated license to 2017 2017-05-28 14:47:02 +02:00
README.md Updated license to 2017 2017-05-28 14:47:02 +02:00
SharpPhysFS.sln Updated license to 2017 2017-05-28 14:47:02 +02:00

README.md

SharpPhysFS

PhysicsFS wrapper for .NET

This library is a wrapper around the PhysFS library designed to work with .NET languages. As such, it employs standard .NET behaviors such as Exceptions and IEnumerables to represent native objects. It also provides access to the underlying low-level methods and a Stream subclass for easy use of the APIs.

The documentation for the methods is copied from the original doxygen and only slightly adapted.

Platform support

The library is designed to work regardless of the underlying OS, so it should run on Windows, Linux and OSX equally well. I haven't tested the OSX port though, and I only superficially tried it on Linux.

If anyone feels so inclined, he/she could contribute by testing it and reporting the results. This would be greatly appreciated.

Installation

You can use this library by compiling it as described in the wiki or by adding it as a reference using NuGet:

Install-Package SharpPhysFS

You should also include compiled shared library of physfs alongside your binary files to be loaded.

Usage

using(var pfs = new PhysFS("")) // This ensures correct initialization and deinitialization
using(var reader = new StreamReader(pfs.OpenRead("/helloworld.txt")))
{
  var contents = reader.ReadToEnd();
}