Skip to main content

Kajabity Tools

Kajabity Tools (for C#) is an Open Source collection of component libraries for use in Microsoft .NET applications.

Kajabity.Tools.Csv

The Kajabity.Tools.Csv library provides classes to read and write CSV files following the RFC 4180 standard, as well as options to change standard behavior (separator, quotes, encoding).

The library is available to clone or fork on GitHub (https://github.com/Kajabity/Kajabity.Tools.Csv) or as a NuGet (Kajabity.Tools.Csv ).

Kajabity.Tools.Java

The Kajabity.Tools.Java library provides classes to provide functionality similar to the Java Properties class – it maintains a collection of string key-value pairs and can load them from or store them to a Java style “.properties” file.

The library is available to clone or fork on GitHub (https://github.com/Kajabity/Kajabity.Tools.Java) or as a NuGet (Kajabity.Tools.Java).

Kajabity.DocForms

The Kajabity.DocForms library provides a base class for Windows Forms applications providing support for all the standard Document operations – File New, Open, Save, Save As, Close, Open Recent Document.  Extend the Document and DocumentManager classes to support your required document types.

The library is available to clone or fork on GitHub (https://github.com/Kajabity/Kajabity.DocForms) or as a NuGet (Kajabity.DocForms).

Original Kajabity Tools

Originally, Kajabity Tools was a single .NET project with WinForms classes (SDIForm) and associated Document classes, combined with CSV and Java Properties file IO classes.  These have now been split out into separate projects as illustrated in the diagram below:

A diagram of Kajabity Tools projects showing the original Kajabity.Tools as a block on the left containing the original packages and the corresponding split out projects on the right.

Kajabity Tools – old and new projects, packages and NuGets

The projects are now separated into separate GitHub repositories with similarly named NuGets:

and

  • Kajabity.Tools (NuGet) version 0.4 – the original Kajabity Tools project incorporating the Document, SDIForm, CSV and Java Properties classes.

Note: The original Kajabity.Tools project will no longer be maintained and future development will be in the separate Csv, Java and DocForms projects.

The Kajabity Tools projects support the following features:

  • JavaProperties – classes to read and write Java style “.properties” files in .NET applications.
  • CSVReader, CSVWriter – classes to read and write “.csv” files including reading or appending a single field or row at a time.
  • SDIForm, Document, DocumentManager – a simple framework for quickly building Single Document Interface (SDI) desktop applications which create and maintain files.

Test and Usage

A small number of NUnit tests are included to ensure the code continues to work properly as bugs are fixed and new features are added.

These tests also serve as examples of how to use the classes – and some of this code appears on the relevant Usage pages for the classes.

The developer notes page introduces the tests and how they may be run as well as some notes on the development environment I’ve been using.

Downloads, Release Notes

Kajabity Tools is available as NuGet packages or from GitHub (see the links at the top of the page).  Copies of the code, compiled DLL, and help file can be found on the download page and there are Release Notes for each release.

The project is released under Apache License 2.0 .