Exemplo n.º 1
0
        /// <summary>
        /// 从文件中读取卡信息
        /// </summary>
        /// <param name="sSavePath"></param>
        /// <returns></returns>
        private IDCardData_SS ReadIDCardData_SSFromFile()
        {
            IDCardData_SS objIDCardData_SS = new IDCardData_SS();

            using (StreamReader objStreamReader = new StreamReader(_saveFilePath + "wx.txt", System.Text.Encoding.Default))
            {
                objIDCardData_SS.Name   = objStreamReader.ReadLine();
                objIDCardData_SS.Sex    = objStreamReader.ReadLine();
                objIDCardData_SS.Nation = objStreamReader.ReadLine();
                string birth = objStreamReader.ReadLine();
                //objIDCardData_SS.Birthday = new DateTime(Convert.ToInt32(birth.Substring(0, 4)), Convert.ToInt32(birth.Substring(4, 2)), Convert.ToInt32(birth.Substring(6, 2)));
                objIDCardData_SS.Birthday = birth;
                objIDCardData_SS.Address  = objStreamReader.ReadLine();
                //objIDCardData_SS.CardNo = objStreamReader.ReadLine();
                objIDCardData_SS.CardNo       = objStreamReader.ReadLine();
                objIDCardData_SS.Department   = objStreamReader.ReadLine();
                objIDCardData_SS.StartDate    = objStreamReader.ReadLine();
                objIDCardData_SS.EndDate      = objStreamReader.ReadLine();
                objIDCardData_SS.AddressEx    = objStreamReader.ReadLine();
                objIDCardData_SS.PhotoPath    = _saveFilePath + @"zp.bmp";
                objIDCardData_SS.ArrPhotoByte = ImageUtils.ImageToByteArray(objIDCardData_SS.PhotoPath);

                return(objIDCardData_SS);
            }
        }
Exemplo n.º 2
0
        /// <summary>
        /// 获取身份证信息
        /// </summary>
        /// <returns></returns>
        public bool ReadIDCard(string oldID = null)
        {
            if (!InitSucceed)
            {
                Open();
                if (!InitSucceed)
                {
                    OnReadFailed("初始化读卡器失败");
                    return(false);
                }
            }
            try
            {
                //验证卡
                int nRet = VerifyIDCard();
                //读取卡信息
                nRet = ReadCardInner();// '读卡内信息

                if (nRet != CODE_SUCCESS_ID1 && nRet != CODE_SUCCESS_ID2)
                {
                    //当读有指纹数据的身份证时,返回62172为成功,
                    //读没有指纹数据的身份证时,返回62171为成功。
                    OnReadFailed(nRet);
                    return(false);
                }

                IDCardData_SS info = null;
                try
                {
                    info = ReadIDCardData_SSFromFile();
                    //
                    //如果新旧id一致,不再通知
                    if (_cardDataReceiver != null && (info.CardNo != oldID || string.IsNullOrEmpty(oldID)))
                    {
                        _cardDataReceiver(info);
                    }
                }
                catch (Exception ex)
                {
                    OnReadFailed("文件解析失败:" + ex.Message);
                    return(false);
                }
            }
            catch (Exception ex)
            {
                OnReadFailed(ex.Message);
                return(false);
            }
            NotifyMessage("读卡成功");
            return(true);
        }