在 WM 平台上开发 GPS 导航系统
2010-02-21 22:52:00 来源:WEB开发网153 Exit For
154 Case Else
155 ' Is this the first value for the checksum?
156 If Checksum = 0 Then
157 ' Yes. Set the checksum to the value
158 Checksum = Convert.ToByte(Character)
159 Else
160 ' No. XOR the checksum with this character's value
161 Checksum = Checksum Xor Convert.ToByte(Character)
162 End If
163 End Select
164 Next
165 ' Return the checksum formatted as a two-character hexadecimal
166 Return Checksum.ToString("X2")
167 End Function
168 End Class
169
一个世界级的解析器
国际读者可能已经发现了一个微妙的问题,这不是在上市初期处理-数字被在美国使用的数字格式报告!如比利时和瑞士使用不同的数字格式,需要调整解析器以便在所有的地方工作。幸运的是,NET框架,其中包括内置支持不同文化之间的转换数量,因此对解析器必要的改变很简单。在解析器中,唯一的分数值是速度,因此只有一处改动是必要的。NmeaCultureInfo变量代表NMEA语句内使用数字的文化。Double.Parse方法使用这个变量用于将速度转换成机器的地方文化。列表1-8显示了完整的解析器,现在可以在国际上用了。
代码片段:
1 *************************************************************
2
3 '** Listing 1-8. Adding support for international cultures
4
5 '*************************************************************
6
7 Imports System.Globalization
8 Public Class NmeaInterpreter
9
10 ' Represents the EN-US culture, used for numbers in NMEA sentences
11 Private NmeaCultureInfo As New CultureInfo("en-US")
12 ' Used to convert knots into miles per hour
13 Private MPHPerKnot As Double = Double.Parse("1.150779", NmeaCultureInfo)
14 ' Raised when the current location has changed
15 Public Event PositionReceived(ByVal latitude As String,_
- ››开发Android 日历教程
- ››开发学院总结 Win 8实用技巧大全
- ››开发学院原创教程:把win8的IE10放桌面上方法(非...
- ››开发者眼中的Windows Phone和Android
- ››开发学院教你用SQL 语句最快速清空MySQL 数据表的...
- ››WM 无法连接到win 7及webservice的异类原因
- ››开发一个自己的HTML在线编辑器(一)
- ››开发一个自己的HTML在线编辑器(二)
- ››开发者在App Store上赚的钱比在Android Market上多...
- ››开发者应深入学习的10个Android开源应用项目
- ››WM/WP上最完美的背光控制软件
- ››WM性能优化的一些经验
更多精彩
赞助商链接