Beispiel #1
0
        /// <summary>
        /// 解析文件传输信息(不包含消息头)
        /// </summary>
        /// <param name="fileTransferInfo">待解析字符串(不包含消息头)</param>
        /// <param name="fileInfo">文件信息</param>
        protected void ParseFileTransferInfoWithoutHeader(string fileTransferInfo, out TcpFileInfo fileInfo)
        {
            //设置默认值
            fileInfo = new TcpFileInfo
            {
                FileName   = string.Empty,
                FileLength = -1
            };

            if (!string.IsNullOrWhiteSpace(fileTransferInfo))
            {
                int nIndex = -1;

                //解析文件名称
                nIndex = fileTransferInfo.IndexOf(MsgFileName.Substring(0, MsgFileName.IndexOf(":")));
                if (nIndex >= 0)
                {
                    fileInfo.FileName = GetMsg(fileTransferInfo, nIndex);
                }

                //解析文件长度
                nIndex = fileTransferInfo.IndexOf(MsgFileLength.Substring(0, MsgFileLength.IndexOf(":")));
                if (nIndex >= 0)
                {
                    Int64.TryParse(GetMsg(fileTransferInfo, nIndex), out fileInfo.FileLength);
                }
            }
        }
Beispiel #2
0
        /// <summary>
        /// 解析文件传输信息(包含消息头)
        /// </summary>
        /// <param name="fileTransferInfo">待解析字符串(包含消息头)</param>
        /// <param name="fileInfo">文件信息</param>
        protected void ParseFileTransferInfo(string fileTransferInfo, out TcpFileInfo fileInfo)
        {
            if (fileTransferInfo != null && fileTransferInfo.StartsWith(MsgFileTransferReady))
            {
                //去除消息头的字符串
                string strDropHeader = fileTransferInfo.Substring(MsgFileTransferReady.Length);

                ParseFileTransferInfoWithoutHeader(strDropHeader, out fileInfo);
            }
            else
            {
                //设置默认值
                fileInfo = new TcpFileInfo
                {
                    FileName   = string.Empty,
                    FileLength = -1
                };
            }
        }