add INIReader(FILE*) constructor
diff --git a/INIReader.h b/INIReader.h
index fbb5bc2..9263e43 100644
--- a/INIReader.h
+++ b/INIReader.h
@@ -319,6 +319,10 @@
     // about the parsing.
     INIReader(std::string filename);
 
+    // Construct INIReader and parse given file. See ini.h for more info
+    // about the parsing.
+    INIReader(FILE *file);
+
     // Return the result of ini_parse(), i.e., 0 on success, line number of
     // first error on parse error, or -1 on file open error.
     int ParseError() const;
@@ -370,6 +374,11 @@
     _error = ini_parse(filename.c_str(), ValueHandler, this);
 }
 
+inline INIReader::INIReader(FILE *file)
+{
+    _error = ini_parse_file(file, ValueHandler, this);
+}
+
 inline int INIReader::ParseError() const
 {
     return _error;