public static struct014a[] m00022e(string p0, string p1, string p2) { FtpWebResponse response = m000230(p0, p1, p2, "LIST").GetResponse() as FtpWebResponse; string str = new StreamReader(response.GetResponseStream(), Encoding.ASCII).ReadToEnd(); response.Close(); List<struct014a> list = new List<struct014a>(); string[] strArray = str.Split(new char[] { '\n' }); enum01fa enumfa = m000231(strArray); foreach (string str2 in strArray) { if ((enumfa != enum01fa.f0000c0) && (str2 != "")) { struct014a item = new struct014a(); item.f0000d7 = ".."; switch (enumfa) { case enum01fa.f00002a: item = m000082(str2); break; case enum01fa.f0000bf: item = m000081(str2); break; } if ((item.f0000d7 != ".") && (item.f0000d7 != "..")) { list.Add(item); } } } return list.ToArray(); }
private static struct014a m000081(string p0) { struct014a structa = new struct014a(); string str = p0.Trim(); string str2 = str.Substring(0, 8); str = str.Substring(8, str.Length - 8).Trim(); string str3 = str.Substring(0, 7); str = str.Substring(7, str.Length - 7).Trim(); structa.f000063 = DateTime.Parse(str2 + " " + str3); if (str.Substring(0, 5) == "<DIR>") { structa.f00000a = true; str = str.Substring(5, str.Length - 5).Trim(); } else { str = str.Split(new char[] { ' ' })[1].Trim(); structa.f00000a = false; } structa.f0000d7 = str; return structa; }
private static struct014a m000082(string p0) { struct014a structa = new struct014a(); string str = p0.Trim(); structa.f000006 = str.Substring(0, 9); structa.f00000a = structa.f000006[0] == 'd'; str = str.Substring(11).Trim(); m00022f(ref str, ' ', 0); structa.f000007 = m00022f(ref str, ' ', 0); structa.f00002f = m00022f(ref str, ' ', 0); m00022f(ref str, ' ', 0); if (!DateTime.TryParse(m00022f(ref str, ' ', 8), out structa.f000063)) { structa.f000063 = new DateTime(); } structa.f0000d7 = str; return structa; }