TIniFile::ReadString()
возвращает значение Default
, только если указанное значение Ident
не существует вообще.Если значение Ident
существует, но оно пустое или при чтении его возникла ошибка, вместо него возвращается пустая строка.Если вы хотите, чтобы значение Default
использовалось, если значение Ident
пустое, вам придется проверить это вручную, например:
String s = pIni->ReadString (_D("x"), _D("CurrentFile"), _D(""));
if (s.IsEmpty()) // or: if (s == _D(""))
s = _D("DefaultVal");
Обратите внимание, что TIniFile::ReadInteger()
возвращает Default
значение, если значение Ident
не может быть преобразовано в int
для любой причины, будь то потому, что она не существует, она пустая, ее нельзя прочитать, она не числоваяшестнадцатеричный формат и т. д.