LBS上传到百度地图
准备:
第一步:注册百度地图开发者账号
第二步:使用开发者账号注册相对应秘钥
在LBS后台添加所需要上传的字段
1,添加WebClientHelper帮助类
2,LBS帮助类
private string ak = "WsjYicnWeleiuu8bmAYLy08m";//用户的访问权限key
private string petLocationId = "80305";//(位置数据表的标示)
private string petHospitalId = "90736";//(位置数据表的标示)
WebClientHelper clientHelper = new WebClientHelper();
/// <summary> /// 生成文件上传到LBS(丢失、拾获、领养)/// </summary>
/// <param name="title">公告标题</param>
/// <param name="lng">经度</param>
/// <param name="lat">纬度</param>
/// <param name="address">地址(标准的地址信息,如北京市XX区XX街(路)XX号,或名胜古迹、标志性建筑物,或“XX路与XX路交叉口”描述方式)</param> /// <param name="petpicture">图片(互联网图片)</param>
/// <param name="sex">性别</param>
/// <param name="noticedate">日期(或发布日期):2014-03-20</param>
/// <param name="state">状态标记:1,2,3,4</param>
/// <param name="filePath">上传文件的存放路径:写成Server.MapPath("/tempfile/"),存放到服务器</param>
/// <param name="customPoiId">自定义id(便于更新LBS里的数据信息)</param>
/// <returns></returns>
public bool UploadLoacationToLBS(string title, string lng, string lat, string address, string sex, string noticedate, int state, string filePath, string customPoiId)
{
if (string.IsNullOrEmpty(lng) || string.IsNullOrEmpty(lat))
{
LogHelper.WriteLog("地址解析失败:经纬度为空");
return false;
}
string fileName = string.Format("{0:yyyy-MM-dd}", DateTime.Now).Replace("-", "") + RandomCodeHelper.GetNumberRandomCode(4) + ".csv"; string fullPath = filePath + fileName; //重置csv文件名称
if (File.Exists(fullPath)) //判断该csv文件名称是否重复
{
File.Delete(fullPath); //删除重复文件
} try {
//将内容写入csv文件,存入服务器
FileStream fs = new FileStream(fullPath, FileMode.Create, FileAccess.Write);
StreamWriter sw = new StreamWriter(fs, Encoding.Default);
string fieldTilte = "title,address,longitude,latitude,coord_type,,CustomPoiId,state,noticedate,sex,variety,feature,petpicture";
sw.WriteLine(fieldTilte);
//sw.WriteLine(title + "," + address + "," + lng + "," + lat + ",1,," + petpicture + "," + sex + "," + noticedate + "," + state);
sw.WriteLine(title + "," + address + "," + lng + "," + lat + ",1,," + customPoiId + "," + state + "," + noticedate + "," + sex + "," + petpicture);
sw.Close();
fs.Close();
return UploadLoacationToLBS(fullPath, petLocationId); //文件内容写入完成,上传到LBS方法
} catch (Exception ex) {
LogHelper.WriteLog("上传文件到LBS出错:", ex);
return false;
}
}
----------------------------------------------------------------------LBS上传坐标------------------------------------------------------------------------------------------
/// <summary>
/// 上传数据文件
/// </summary>
/// <param name="fullPath">文件路径</param>
/// <param name="geotableId">位置数据表的标示(id)</param>
/// <returns></returns>
public bool UploadLoacationToLBS(string fullPath, string geotableId)
{
string result = clientHelper.UploadFile("http://api.map.baidu.com/geodata/v3/poi/upload", "ak=" + ak + "&geotable_id=" + geotableId + "", "poi_list=" + fullPath);
LogHelper.WriteLog("上传到LBS返回值记录:" + result);
if (result.Contains("\"status\": 0,"))
{
//File.Delete(fullPath);
return true;
}
else
{
return false;
}
}
注:上传会有延迟,目前用后台异步解决,各位大神多多指教
LBS上传到百度地图的更多相关文章
- GPS坐标显示在百度地图上(Qt+百度地图)
Qt在5.6以后的版本就不支持webview控件了,这里我用的是Qt5.4的版本,里面还有这个控件: 下面简单介绍下Qt与html中的javascript调用交互过程: 一.整体实现介绍 在html中 ...
- ubuntu上传到百度网盘
1 2 亲测可以上传
- Linux命令行上传文件到百度网盘
利用bpcs_uploader你可以自动将VPS主机上的文件上传到百度网盘中,同时也可以从百度网盘中下载文件到VPS主机上,让你的文件安全地"住"在百度云中.[font=Tahom ...
- 如何免费上传4G以上大文件至百度云网盘
百度云网盘的容量高达2048G,因而如今使用百度云网盘的用户也越来越多, 但是百度云中如果要上传超过4G的大文件,必须要升级VIP才行,但这需要收费.那么,超过4G以上的大文件我们该怎样上传到百度云呢 ...
- iOS开发---集成百度地图完善版
一.成为百度的开发者.创建应用 http://developer.baidu.com/map/index.php?title=首页 (鼠标移向 然后选择你的项目需要的功能 你可以在里面了解到你想要使用 ...
- 百度地图bd map使用方法
一个经验:(当项目中的方法, 很多的时候, 相互调用的时候) 可以在script中, 先定义, 注意是定义, 一个"入口"函数, function initMap(), 然后, 让 ...
- ASP.NET Core文件上传与下载(多种上传方式)
前言 前段时间项目上线,实在太忙,最近终于开始可以研究研究ASP.NET Core了. 打算写个系列,但是还没想好目录,今天先来一篇,后面在整理吧. ASP.NET Core 2.0 发展到现在,已经 ...
- [工具向]__申请,下载,使用百度地图api
前言 api即应用程序接口,在我们的日常开发中,我们不仅可以在开源代码仓库(,github,码云)中获得很大的帮助,在日常开发中占重要地位的另一个东西就是api,我们可以使用众多的第三方编写的优秀的a ...
- angular js 上传插件 ng-file-upload 使用时注意事项
项目框架为angular js,需要用到文件上传,百度之后先选择了angular-file-upload,githuab上API文档很全,想要具体了解,可以仔细研究一下.在这里简单回顾一下自己使用的插 ...
随机推荐
- Unsafe的应用
要想把java并发包学好,并明白其底层的设计原理,Unsafe类你不能不去研究一下.下面介绍一下Unsafe类的功能以及它在JDK中的应用. 一.分配内存和释放内存 功能:类中提供的3个本地方法all ...
- 第17/24周 悲观并发控制(Pessimistic Concurrency)
大家好,欢迎回到性能调优培训.今天标志着第5个月培训的开始,这个月我们会谈论SQL Server里的锁.阻塞和死锁(Locking, Blocking, and Deadlocking). SQL S ...
- SQL Server安全(10/11):行级别安全(Row-Level Security)
在保密你的服务器和数据,防备当前复杂的攻击,SQL Server有你需要的一切.但在你能有效使用这些安全功能前,你需要理解你面对的威胁和一些基本的安全概念.这篇文章提供了基础,因此你可以对SQL Se ...
- golang中的race检测
golang中的race检测 由于golang中的go是非常方便的,加上函数又非常容易隐藏go. 所以很多时候,当我们写出一个程序的时候,我们并不知道这个程序在并发情况下会不会出现什么问题. 所以在本 ...
- CSS3魔法堂:认识@font-face和Font Icon
一.前言 过去我们总通过图片来美化站点的LOGO.标题.图标等,而现在我们可以通过@font-face获取另一种更灵活的美化方式. 二.看看例子 /* 定义 */ @font-face { font- ...
- 《ASP.NET SignalR系列》第四课 SignalR自托管(不用IIS)
从现在开始相关文章请到: http://lko2o.com/moon 接着上一篇:<ASP.NET SignalR系列>第三课 SignalR的支持平台 一.概述 SignalR常常依托于 ...
- mvc通过ActionFilterAttribute做登录检查
1.0 创建Attribute using System; using System.Collections.Generic; using System.Linq; using System.Web; ...
- 局部(或全局)设置<a>标签的target属性
对于超链接<a>标签,target属性的设置是比较关键的,在不同的用户场景下选用适合的新页面载入方式,可以大大的提高访客的体验感.我们一般对target的设置可以挨个来,但 ...
- MVC - Action和ActionResult
Action 定义在Controller中的Action方法返回ActionResult对象,ActionResult是对Action执行结果的封装,用于最终对请求进行响应.HTTP是一个单纯的采用请 ...
- membership 启用 roleManager 抛出异常:未能加载文件或程序集MySql.Web
在vs2013中新建一个ASP.NET MVC 4 WEB 应用程序,使用“基本”模板.web.config中默认使用forms认证方式,并添加了membership的配置. <roleMana ...