准备:

第一步:注册百度地图开发者账号

第二步:使用开发者账号注册相对应秘钥

在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上传到百度地图的更多相关文章

  1. GPS坐标显示在百度地图上(Qt+百度地图)

    Qt在5.6以后的版本就不支持webview控件了,这里我用的是Qt5.4的版本,里面还有这个控件: 下面简单介绍下Qt与html中的javascript调用交互过程: 一.整体实现介绍 在html中 ...

  2. ubuntu上传到百度网盘

    1 2 亲测可以上传

  3. Linux命令行上传文件到百度网盘

    利用bpcs_uploader你可以自动将VPS主机上的文件上传到百度网盘中,同时也可以从百度网盘中下载文件到VPS主机上,让你的文件安全地"住"在百度云中.[font=Tahom ...

  4. 如何免费上传4G以上大文件至百度云网盘

    百度云网盘的容量高达2048G,因而如今使用百度云网盘的用户也越来越多, 但是百度云中如果要上传超过4G的大文件,必须要升级VIP才行,但这需要收费.那么,超过4G以上的大文件我们该怎样上传到百度云呢 ...

  5. iOS开发---集成百度地图完善版

    一.成为百度的开发者.创建应用 http://developer.baidu.com/map/index.php?title=首页 (鼠标移向 然后选择你的项目需要的功能 你可以在里面了解到你想要使用 ...

  6. 百度地图bd map使用方法

    一个经验:(当项目中的方法, 很多的时候, 相互调用的时候) 可以在script中, 先定义, 注意是定义, 一个"入口"函数, function initMap(), 然后, 让 ...

  7. ASP.NET Core文件上传与下载(多种上传方式)

    前言 前段时间项目上线,实在太忙,最近终于开始可以研究研究ASP.NET Core了. 打算写个系列,但是还没想好目录,今天先来一篇,后面在整理吧. ASP.NET Core 2.0 发展到现在,已经 ...

  8. [工具向]__申请,下载,使用百度地图api

    前言 api即应用程序接口,在我们的日常开发中,我们不仅可以在开源代码仓库(,github,码云)中获得很大的帮助,在日常开发中占重要地位的另一个东西就是api,我们可以使用众多的第三方编写的优秀的a ...

  9. angular js 上传插件 ng-file-upload 使用时注意事项

    项目框架为angular js,需要用到文件上传,百度之后先选择了angular-file-upload,githuab上API文档很全,想要具体了解,可以仔细研究一下.在这里简单回顾一下自己使用的插 ...

随机推荐

  1. Redis持久化方法对比分析

    1.前言 最近在项目中使用到Redis做缓存,方便多个业务进程之间共享数据.由于Redis的数据都存放在内存中,如果没有配置持久化,redis重启后数据就全丢失了,于是需要开启redis的持久化功能, ...

  2. angularjs中的页面访问权限设置

    11月在赶一个项目,这阵子比较忙,挤挤时间更一篇博客吧,如标题所述说说在ng中页面访问权限控制的问题,水平有限各位看官见谅: 在以往的项目中,前后端常见的配合方式是前端提供页面和ui加一点DuangD ...

  3. C#基础02

    学习"传智播客视频基础"做的课堂笔记,您有幸读到,若其中有错误部分,请您务必指明.另外请给出您的宝贵建议,谢谢. **************基础知识************ 1: ...

  4. C#读取配置文件的几种方式

    配置文件 <?xml version="1.0" encoding="utf-8" ?> <configuration> <con ...

  5. iBoxDB的学习与使用

    1. 引言 一次偶然的机会接触到了iBoxDB这样一个小型的嵌入式对象数据库.感觉非常惊讶有这样轻巧的数据库.iBoxDB 本身是一个NOSQL 同时也有关系数据库的特点. 说说iBoxDB的优点: ...

  6. 【Java每日一题】20161013

    package Oct2016; public class Ques1013{ public static void main(String[] args){ new Obj(); } } class ...

  7. Mysql调试存储过程最简单的方法

    以前同事告诉我用临时表插入变量数据来查看,但是这种方法过于麻烦,而且Mysql没有比较好的调试存储过程的工具.今天google了下发现可以用select + 变量名的方法来调试...真是让我汗颜啊. ...

  8. 容器--LinkedList

    一.前言 上一篇我们介绍了List的重要实现之一ArrayList,  在大多数情况下,我们写代码时会直接使用到ArrayList,因为其在随机访问的优势是其它List无法比拟的.除了ArrayLis ...

  9. web iis服务器安全性配置实例

    自己不维护服务器,不知道维护服务器的辛苦.刚开始为了嫌麻烦,抱有侥幸心理,一些繁琐的安全设置没有配置,结果服务器连一天都没撑过去.经过10天的反复摸索和努力,现在服务器已经稳定工作一个月了,特此整理本 ...

  10. css知多少(1)——我来问你来答

    1. 引言 各位前端或者伪前端(比如作者本人)的同志们,css对你们来说不是很陌生.比如我,在几年之前上大学的时候,给外面做网站就用css,而且必须用css.这样算下来也得六年多了,有些功能可能轻车熟 ...