private FtpItemInfo GetWindowsItemInfoByDetail(string detail) { List <string> detailInfo = detail.Substring(0, 39).SplitStringWithMultiSameChar(' '); detailInfo.Add(detail.Substring(39).Trim()); if (detailInfo.Count != 4) { return(null); } FtpItemInfo ftpileInfo = new FtpItemInfo(); ftpileInfo.Name = detailInfo[3]; if (detailInfo[2] == "<DIR>") { ftpileInfo.Type = FtpItemTypes.Directory; } else { long size = 0; ftpileInfo.Type = FtpItemTypes.File; if (long.TryParse(detailInfo[2], out size)) { ftpileInfo.Size = size; } } return(ftpileInfo); }
private FtpItemInfo GetUnixItemInfoByDetail(string detail) { List <string> detailInfo = detail.Substring(0, 56).SplitStringWithMultiSameChar(' '); detailInfo.Add(detail.Substring(56).Trim()); if (detailInfo.Count != 9) { return(null); } FtpItemInfo ftpileInfo = new FtpItemInfo(); ftpileInfo.UnixAuthority = detailInfo[0]; ftpileInfo.Type = FtpItemTypesHelper.GetUnixItemType(detailInfo[0].Substring(0, 1)); ftpileInfo.Size = long.Parse(detailInfo[4]); ftpileInfo.Name = detailInfo[8]; return(ftpileInfo); }