A .NET/Mono library for simple and minimal parameters files manipulation.
The format of these files are simplest than the MS Windows .ini files. The philosophy of key=value still exists except the [sections]. All keys in the file belong to one anonymous section. Comments etc. in the file are not allowed. Of course the file has unicode encoding.
There are 2 string tables in the class. The first one called keys and stores the names of the key parameters. The second one called values and stores the values of the parameters matched with index of the appropriate key.
To read a value of a key, a method search the keys table, and if found the specified name of the key, returns the string from the same index of the values table. If the index is -1, meaning that key not found, returns an empty string “” as value.
To write a value in a key, a method search the keys table, and if found the specified name of the key, sets the specified string at the same index in the values table. If the index is -1, meaning that key not found, call the add key method.
To add a key, a method search the key table, and if found the specified name of the key, store the specified value at the same index in the values table. If not found copies, makes 2 temporary tables clones. Creates 2 new tables (keys and values) with the length of previous plus one point. Then copies the contents of the previous tables to the news and add at the last index the specified string.
To remove a key, a method search the key table, and if found the specified name of the key, sets at the same index the last values of the two tables. Make 2 temporary tables clones. Then create 2 new tables (keys and values) with the length of previous minus one point and copies the contents of the previous tables to the news, except the last cell.
You can find the library precompiled with documentation included at my box.net place
Or you can browse the project’s home page