首发:个人博客,更新&纠错&回复

在昨天的dota契合度计算器中,用到了dota英雄数据dota玩家数据这两个数据库,为了便于网页应用使用,这两个数据库的存储格式是json,即heros.json和players.json这两个文件。

json文件的好处是用文本编辑器可以打开,但坏处是不像数据库那样有图形化界面方便操作。英雄有100多个,玩家也有十几个,每个英雄和玩家的属性都有十几二十项,在文本编辑器里拖来拖去太麻烦了,不能一目了然。

而且英雄有个tags属性,这属性实际是用逗号分隔的字符串,如"远程,智力,法师,爆发",这个串的编辑是我目前主要要做的事,在文本编辑器里拖动太蠢了,就想要做个exe程序,由于这个编辑器要处理的是json格式数据,采用node-webkit技术,用javascript语言完成是最合适的,不由得感叹技术多学点儿就好像多开了几扇窗户,而不会只有锤子遇到什么都当钉子来砸。

实现起来并不困难,代码在这里,当然要放到node-webkit的壳子里运行,可以参考我的这篇博客

界面如图:

然后顺手把玩家编辑器也给做了,只是在英雄标签编辑器的基础上改了改,界面如下:

设定好了英雄和玩家的指标,就可以用算法计算玩家的契合英雄了:

计算出了杜哥最适合用的前15名英雄,还是比较准确的。处理好的数据和计算用的页面在这里,源码在这里

欢迎使用和提修改意见,尤其是关于英雄指标和算法的,目前的还是觉得有缺陷,例如沉默术士和天怒法师都有“沉默”技能,显然两者是不同的,但没想好该怎么区分。

长期欢迎项目合作机会介绍,项目收入10%用于酬谢介绍人。新浪微博:@冷镜,QQ:908789432

本地json文件的编辑器,node-webkit开发的exe程序的更多相关文章

  1. HTML5实现本地JSON文件的读写

    参考: 使用HTML5来实现本地文件读取和写入  (FileReader读取json文件,FileSaver.js保存json文件) w3school <input>标签 FileRead ...

  2. JavaScript读取本地json文件

    JavaScript读取本地json文件 今天调试了一上午,通过jQuery读取本地json文件总是失败,始终找不出原因,各种方法都试了 开始总以为是不是json格式的问题.高了半天不行 后来读了一个 ...

  3. 访问本地json文件因跨域导致的问题

    我使用jquery的getJSON的方法获取本地的json文件,并进行操作,获取json 数据代码如下: $.getJSON("invite_panel.json",functio ...

  4. 读取本地json文件,并转换为dictionary

    // 读取本地JSON文件 - (NSDictionary *)readLocalFileWithName:(NSString *)name { // 获取文件路径 NSString *path = ...

  5. jQuery ajax读取本地json文件

    jQuery ajax读取本地json文件 json文件 { "first":[ {"name":"张三","sex": ...

  6. 第三天,爬取伯乐在线文章代码,编写items.py,保存数据到本地json文件中

        一. 爬取http://blog.jobbole.com/all-posts/中的所有文章     1. 编写jobbole.py简单代码 import scrapy from scrapy. ...

  7. vue 模拟后台数据(加载本地json文件)调试

    首先创建一个本地json文件,放在项目中如下 { "runRedLight":{ "CurrentPage": 1, "TotalPages" ...

  8. 将Chrome调试器里的JavaScript变量保存成本地JSON文件

    我写了一个系列的文章,主要用来搜集一些供程序员使用的小工具,小技巧,帮助大家提高工作效率. 推荐一个功能强大的文件搜索工具SearchMyFiles 介绍一个好用的免费流程图和UML绘制软件-Diag ...

  9. 读取本地json文件,转出为指定格式json 使用Base64进行string的加密和解密

    读取本地json文件,转出为指定格式json   引用添加Json.Net 引用命名空间 using Newtonsoft.Json //读取自定目录下的json文件StreamReader sr = ...

随机推荐

  1. [CareerCup] 18.2 Shuffle Cards 洗牌

    18.2 Write a method to shuffle a deck of cards. It must be a perfect shuffle—in other words, each of ...

  2. E: dpkg 被中断,您必须手工运行 sudo dpkg --configure -a 解决此问题。

    学习 : http://blog.csdn.net/darennet/article/details/9009361 http://www.uedsc.com/dpkg-sudo-dpkg-confi ...

  3. FK JavaScript:ArcGIS JavaScript类库加载不成功而导致的程序异常

    现象:页面加载时,有时候成功,有时候出错,出错的地方为init.js 加载esri的类库 经过仔细对比,发现出错时dojo加载的类库中,对象的很多属性都为undefined,而加载成功时,该对象的相关 ...

  4. UIDynamic(物理仿真)

    简介 什么是UIDynamic UIDynamic是从iOS 7开始引入的一种新技术,隶属于UIKit框架 可以认为是一种物理引擎,能模拟和仿真现实生活中的物理现象 如: 重力.弹性碰撞等现象 物理引 ...

  5. 重新初始化RAC的OCR盘和Votedisk盘,修复RAC系统

    假设我们的RAC环境中OCR磁盘和votedisk磁盘全部被破坏,并且都没有备份,那么我们该如何恢复我们的RAC环境.最近简单的办法就是重新初始化我们的ocr盘和votedisk盘,把集群中的所有相关 ...

  6. 类似input框内最右边添加图标,有清空功能

    <html> <head> <meta http-equiv="Content-Type" content="text/html; char ...

  7. IOS第八天(2:UITableViewController团购,点击底部,xib加载更多, 代理模式)

    ******* HMViewController.h #import "HMViewController.h" #import "HMTg.h" #import ...

  8. 用refresh控制浏览器定时刷新

    package cn.itcast.response; import java.io.IOException; import java.util.Random; import javax.servle ...

  9. Sharepoint 2013 发布功能(Publishing features)

    一.默认情况下,在创建网站集时,只有选择的模板为‘ Publishing Portal(发布门户)’与‘ Enterprise Wiki(企业 Wiki)’时才默认启用发布功能,如下图所示: 二.发布 ...

  10. scala在linux以及在windows的安装,以及在IDEA中新建Scala项目

    一:linux下配资scala 1.上传 2.解压 3.配置环境 4.source一下 5.启动和简单使用 6.输出语句 二:scalac的使用 1.新建文件测试目录 2.新建程序 3.文件编译器书写 ...