创建DOTA2本地数据库(一)
在APP中,用本地数据库好于频繁的联网去获取相关数据。我使用SQLite作为本地的数据库,比较轻巧。
英雄
首先先建立英雄的数据库,暂时我先只设置ID,name,loaclized_name这三种,我这是在窗体应用程序里写的,不要在意那些细节,其实我们只是要先创建这么一个.db文件
public Form1()
{
InitializeComponent();
databaseInit();
String url = "https://api.steampowered.com/IEconDOTA2_570/GetHeroes/v0001/?key=<key>&language=zh_cn";
WebClient web = new WebClient();
web.Encoding = System.Text.Encoding.UTF8;
String html = web.DownloadString(url);
load(html);
} private void load(String json)
{
JObject jo = JObject.Parse(JObject.Parse(json)["result"].ToString());
JArray ja = JArray.Parse(jo["heroes"].ToString());
for (int i = ; i < ja.Count; i++)
{
String name = ja[i]["name"].ToString();
String id = ja[i]["id"].ToString();
String local = ja[i]["localized_name"].ToString(); String sql = "INSERT INTO heroes(id,name,localized_name)VALUES(" + id + ",'" + name
+ "','" + local + "')";
cmdInit(sql).ExecuteNonQuery();
}
} //数据库初始化
public void databaseInit()
{
//数据库文件地址
String datasource = System.Windows.Forms.Application.StartupPath + "\\dota.db";
//连接数据
conString.DataSource = datasource;
//可添加设置密码 constr.Password="";
sqlCon.ConnectionString = conString.ToString();
//创建数据库文件并连接
sqlCon.Open();
//创建表
try
{
String friendsql = "CREATE TABLE heroes (id integer PRIMARY KEY AUTOINCREMENT not null,name VARCHAR(64) not null," +
" localized_name VARCHAR(64));";
cmdInit(friendsql).ExecuteNonQuery();
}
catch (Exception)
{
}
}
//SQLiteCommand初始化配置
private SQLiteCommand cmdInit(String sql)
{
SQLiteCommand sqlCmd = new SQLiteCommand();
sqlCmd.Connection = sqlCon;
sqlCmd.CommandText = sql;
return sqlCmd;
}
用软件打开后:
至于英雄的图像,根据之前VPK导出的IMAGE
横版图标在heroes目录下,文件为上方name去掉开头的“npc_dota_hero_”的png文件
纵版图标在heroes\selection目录下,文件是与上方name相同的png文件
创建DOTA2本地数据库(一)的更多相关文章
- 创建oracle本地数据库步骤详解
前提:安装好oracle数据库客户端: PL/SQL DEVELOPER 1.打开DatabaseConfiguration Assistant,如图: 选择创建数据库->next->选择 ...
- [转载]Unity3D 游戏引擎之使用C#语言建立本地数据库(SQLITE)
以前在开发中一直使用IOS源生的数据库,通过传递消息的形式在与Unity3D中进行交互.本文我在详细说说如何使用C#语言来在MAC 操作系统下创建Unity本地数据库,我是C#控哇咔咔--- 首先你需 ...
- Windows Phone本地数据库(SQLCE):8、DataContext(翻译)
这是“windows phone mango本地数据库(sqlce)”系列短片文章的第八篇. 为了让你开始在Windows Phone Mango中使用数据库,这一系列短片文章将覆盖所有你需要知道的知 ...
- Windows Phone本地数据库(SQLCE):7、Database mapping(翻译)
这是“windows phone mango本地数据库(sqlce)”系列短片文章的第七篇. 为了让你开始在Windows Phone Mango中使用数据库,这一系列短片文章将覆盖所有你需要知道的知 ...
- 五、 创建连接串连接本地数据库(ASP.NET MVC5 系列)
1. 创建连接串连接本地SQLServer数据库 上节讲到MovieDBContext类,这个类的作用是连接数据库并将Movie对象迁移到数据库记录中.不过你会问一个问题:如何知道这个对象将连接哪个数 ...
- 创建本地数据库mySQL并连接JDBC
转自: http://blog.csdn.net/wei_chong_chong/article/details/44830491 如何创建本地数据库MySQL并连接JDBC 转载 2015年04月0 ...
- Windows Phone本地数据库(SQLCE):10、创建数据库(翻译) (转)
这是“windows phone mango本地数据库(sqlce)”系列短片文章的第十篇. 为了让你开始在Windows Phone Mango中使用数据库,这一系列短片文章将覆盖所有你需要知道的知 ...
- QT 创建本地数据库(SQLite数据库)存储数据
注意:QT自带SQLITE数据库,不需要再安装 1.创建一个包含创建.查询.修改和删除数据库的数据库类(DataBase) DataBase.h头文件 #pragma once #include &l ...
- HTML5权威指南--Web Storage,本地数据库,本地缓存API,Web Sockets API,Geolocation API(简要学习笔记二)
1.Web Storage HTML5除了Canvas元素之外,还有一个非常重要的功能那就是客户端本地保存数据的Web Storage功能. 以前都是用cookies保存用户名等简单信息. 但是c ...
随机推荐
- 多光谱图像数据库, Multispectral images databses
1. https://scien.stanford.edu/index.php/hyperspectral-image-data/ 2. http://www.cs.columbia.edu/CAVE ...
- Spring系列之bean的使用
一.Bean的定义 <bean id="userDao" class="com.dev.spring.simple.MemoryUserDao"/> ...
- 如何取消 DiscuzX 帖子被系统自动隐?
设置路径: 全局 -> 站点功能 -> 帖子阅读 -> 启用隐藏水帖,选择“否”
- 为C#自定义控件添加自定义事件
这里的自定义控件是由普通控件组合而成的. 希望事件响应代码推迟到使用自定义控件的窗体里写. 步骤一:新建一个用户控件,放两个按钮,Tag分别是btn1,btn2. 这两个按钮的共用单击事件处理代码如下 ...
- NSCache
今天在优化的时候,用了NSCache,感觉没什么两样(视觉上).按理内存缓存,怎么也比从硬盘读取的要快.. dispatch_async(dispatch_get_global_queue(, ), ...
- IDA插件栈字符串识别插件
该插件是一款可以自动识别栈上局部变量为字符串的插件,字符串形式如下,并自动的加上注释 如图:可以自动识别栈上的字符串 项目主 ...
- 【转】python编码的问题
摘要: 为了在源代码中支持非ASCII字符,必须在源文件的第一行或者第二行显示地指定编码格式: # coding=utf-8 或者是: #!/usr/bin/python # -*- coding: ...
- PowerDesigner使用
首先我们需要创建一个测试数据库,为了简单,我们在这个数据库中只创建一个Student表和一个Major表.其表结构和关系如下所示. 看看怎样用PowerDesigner快速的创建出这个数据库吧. 1. ...
- 模仿mybatis,用jdk proxy实现接口
在mybatis中,我们都只需要定义一个mapper接口,但并不需要对它进行任务实现.只要有对就的mapper.xml文件就可以访问数据库.那么,没有接口的访问是如何实现的呢. 答案就是JDK pro ...
- node.js grunt文件压缩
对于前段来说,熟悉node的人其实还并不是太多,如果您想入门一门后端语言我建议还是从node入手最好. 我也是最近开始学习node,来谈谈近期对node的学习的心得. 提到node首先就是要安装一大堆 ...