代码是:
private static void loadAccounts()
{
using (TextReader tr = new StreamReader("accounts.txt"))
{
string line = null;
while ((line = tr.ReadLine()) != null)
{
String[] details = line.Split('\t');
accounts.Add(details[0].Substring(6) +
":" + details[1].Substring(10));
}
}
}
文本文件应包含什么/如何格式化contense。 我试过了: 用户名密码 用户名/ t密码
但得到错误
错误是:
System.ArgumentOutOfRangeException:startIndex不能大于字符串的长度。 在System.String.InternalSubStringWithChecks(Int32 startIndex,Int32 length,Boolean fAlwaysCopy) 在System.String.Substring(Int32 startIndex,Int32 length) 在System.String.Substring(Int32 startIndex) 在Test.Program.loadAccounts()中 c:\ Users \ Documents \ SharpDevelopProjects \ Test \ Test \ Program.cs:第148行 在Test.Program.Main(String [] args)中 c:\ Users \ Documents \ SharpDevelopProjects \ Test \ Test \ Program.cs:第26行
答案 0 :(得分:0)
奇怪的代码。
此行在选项卡字符上分割文本文件中的一行,例如“用户名(想象一下这里的标签)密码”
String[] details = line.Split('\t');
此行丢弃用户名元素的前6个字符(details [0]),添加冒号,丢弃密码元素的前10个字符(details [1])并将其连接成一个字符串。
accounts.Add(details[0].Substring(6) + ":" + details[1].Substring(10));
答案 1 :(得分:0)
文本文件中的所有行都应该: 最小用户名长度= 6 最小密码长度= 10 我也会取代' \ t'喜欢' '或者' - '