C#读取txt文件的经纬度,将读取到经纬度在webbrowser地图页面里面显示标注
时间: 2023-12-08 16:03:28 浏览: 153
你可以按照以下步骤使用 C# 读取 txt 文件中的经纬度,并将其在 WebBrowser 控件中显示标注:
1. 创建一个 Windows 窗体应用程序,并添加一个 WebBrowser 控件和一个按钮控件。
2. 在按钮的 Click 事件中添加以下代码,实现读取 txt 文件中的经纬度:
```
private void button1_Click(object sender, EventArgs e)
{
// 读取 txt 文件中的经纬度
string[] lines = File.ReadAllLines("data.txt");
foreach (string line in lines)
{
string[] parts = line.Split(',');
double lat = double.Parse(parts[0]);
double lng = double.Parse(parts[1]);
// 在 WebBrowser 控件中显示标注
webBrowser1.Document.InvokeScript("addMarker", new object[] { lat, lng });
}
}
```
3. 在窗体的 Load 事件中添加以下代码,实现在 WebBrowser 控件中加载地图页面:
```
private void Form1_Load(object sender, EventArgs e)
{
// 加载地图页面
string html = "<html><head><script src=\"https://maps.googleapis.com/maps/api/js?key=<YOUR_API_KEY>\"></script><script>function initialize() { var mapOptions = { center: new google.maps.LatLng(0, 0), zoom: 2 }; var map = new google.maps.Map(document.getElementById(\"map-canvas\"), mapOptions); window.addMarker = function(lat, lng) { var marker = new google.maps.Marker({ position: new google.maps.LatLng(lat, lng), map: map }); }; } google.maps.event.addDomListener(window, 'load', initialize);</script></head><body><div id=\"map-canvas\" style=\"width:100%; height:100%;\"></div></body></html>";
webBrowser1.DocumentText = html;
}
```
4. 将 `<YOUR_API_KEY>` 替换为你的 Google Maps API 密钥。
5. 创建一个名为 `data.txt` 的文本文件,并将每个经纬度作为一行保存,格式为 `latitude,longitude`。
6. 运行程序,点击按钮即可在地图页面中显示标注。
阅读全文