I have created a basic .ini file called configuration.ini. This file looks as follows:
[Application]
no_of_applications= 4;
[states]
title = "Config File States available";
name = 'Active, Deactivated, Hot';
[reaction]
reac_type = ["switch_schedule", "activate_app", "disable_app";
Now I intend to read this .ini file from my C program. I have included the #include <configuration.ini> line in my C program. I just want to read the title from the section 'states' in the C program i.e
#include<stdio.h>
#include<configuration.ini>
int main()
{
//read the variable 'title' from 'states' and print it
return 0;
}
Can somebody tell me how can I do that?
Assuming you are using Windows, you can work this way:
First include Windows.h
#include <Windows.h>
On your function, create a LPCSTR (heh!? Really? Yeah.)
LPCSTR ini = "C:\\config.ini";
And call GetPrivateProfileString:
char returnValue[100];
GetPrivateProfileString("states", "title", 0, returnValue, 100, ini);
Well, first of all, do not #include the .ini file. It does not think what you think it does. #include <fname> actually adds the content of the file fname to the current file, which is not what you want. Remove the #include.
Secondly, be it .ini or something else, if it is having formatted text, you can always use the below algorithm to read the file.
fopen(). Check against errors.fgets(). Check for success."[states]". You may want to get rid of the trailing newline read by the fgets() first.strtok().title here. You may use strcmp().If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With