Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/319.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 使用C解析出扫描到asp文本框中的DL信息#_C#_Asp.net - Fatal编程技术网

C# 使用C解析出扫描到asp文本框中的DL信息#

C# 使用C解析出扫描到asp文本框中的DL信息#,c#,asp.net,C#,Asp.net,早上好…我正在开发一个信息亭程序,其中一个选项是允许人们插入他们的驾照进行登记…我想解析驾照中的信息…我已经能够实现90%的目标,但在获取最后一部分方面有点困难…即DOB…我对C#和学习仍然是新手当我去…任何帮助是非常感谢…下面是我正在使用的代码 HTML <asp:TextBox ID="TextBox1" runat="server" autofocus ontextchanged="TextBox1_TextChanged" MaxLength="1000"></asp:

早上好…我正在开发一个信息亭程序,其中一个选项是允许人们插入他们的驾照进行登记…我想解析驾照中的信息…我已经能够实现90%的目标,但在获取最后一部分方面有点困难…即DOB…我对C#和学习仍然是新手当我去…任何帮助是非常感谢…下面是我正在使用的代码

HTML

<asp:TextBox ID="TextBox1" runat="server" autofocus ontextchanged="TextBox1_TextChanged" MaxLength="1000"></asp:TextBox>
从文本框中解析的信息如下:

插入的卡^Smith$John ^123 Main^=19780101

结果如下:

约翰·史密斯123 Main=1978010

结果应如下所示:(能够将DOB信息转换为MM-DD-YYYY格式也很好…但此时不需要)

约翰·史密斯123大街19780101号

为什么会显示=符号,为什么会切断DOB的最后一个编号

这可能是一个非常简单的解决方案…但我遇到了麻烦…再次感谢您的帮助

我编辑了以下代码,它可以工作:

    int begdob = s.IndexOf("=", begaddress + 1);
  int enddob = s.IndexOf("?", endaddress + 1);
  string dob = s.Substring(endaddress + 2, enddob - begdob - 1);
但是…如果我的字符串如下所示:

插入的卡^Smith$John ^1123 Main ^459846=895519780101

我很难解析出DOB…下面是我得到的:

约翰·史密斯1123 Main 59846=895519

我需要从这个字符串中获得以下内容:

约翰·史密斯1123大街19780101号


再次感谢您的帮助…

此操作不起作用的原因是以下代码:

string dob = s.Substring(endaddress + 1, enddob - begdob - 1);
首先,当第二个填充字符为“=”时,只看地址末尾的一个字符。其次,由于DOB字段始终为8个字符,因此应该从填充字符向后执行子字符串,长度为8个字符

因此:


您的问题是这行代码:

string dob=s.Substring(endaddress+1,enddob-begdob-1)

如果查看字符串
^Smith$John^123 Main^=19780101?
可以看到
endaddress+1
实际上是指
=
的开始索引。根据你的代码你想做什么。。。这样做
字符串dob=s.Substring(begdob+1,enddob-begdob-1)


这会让你得到你想要的。

谢谢你的帮助……它就像冠军一样有效!!!我感谢你抽出时间来帮助我…圣诞快乐,新年快乐!!!
string dob = s.Substring(endaddress + 1, enddob - begdob - 1);
string dob = s.Substring(s.IndexOf("?", endaddress + 1) - 8, 8);