我想从文本文件中读取设置。
string MySettingsFile = "Settings.txt";
通常,该文件将有 4 行。
SettingA:Alpha1
SettingB:Bravo2
SettingC:Charlie1
SettingD:Delta6
我想在它自己的变量中获取每一行,如下所示:
string MyAlpa = "Alpha1";
string MyBravo = "Bravo2";
string MyCharlie = "Charlie1";
string MyDelta = "Delta6";
通常,我只会循环读取行,读取每一行并设置字符串。但是,如果缺少第 4 行,并且我正在查找冒号之后的行的部分,那么如果我像这样检查它,我会收到错误...
MyDelta = MyDeltaSubstring(MyDelta.LastIndexOf(':') + 1);
有没有办法在我尝试获取 SubString 之前“检查是否存在特定行”(所以它不会出错),比如在一个单独的函数中,它有 try,catch,最后返回字符串我想要或“丢失”这个词,如果该行丢失(然后因为没有更多的行而停止)?
function DoesLineExist(int X, string myFile)
{
string MyString;
try ()
{
// read line X from file myFile
// get everything AFTER the ":" and put it in MyString
// ??? //
}
catch (ArgumentException null)
{
MyString = "Missing";
}
catch (ArgumentException e)
{
MyString = "Missing";
}
finally
{
MyString = ? // whatever we got From Line X (after ":")
}
return MyString; // only if line is missing
}
有没有更好的方法来做到这一点?ReadAllLines 还是什么?