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

在昨天的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. 接口测试之soupui&groovy

    原著地址:http://www.cnblogs.com/wade-xu/p/4236295.html#3334654 需注意下方code的设置

  2. select在各个浏览器中的兼容性问题

    我们知道select标签在各个浏览器中的属性和各浏览器的支持各有些不同,从而造成select选择框在各浏览器的显示有不同. 下面我们通过对主要CSS属性的支持,打造全兼容select. 对select ...

  3. 李洪强漫谈iOS开发[C语言-046]-统计输入字符个数

  4. inconfont 字体库应用

    先去注册个号码,好像只可以用新浪微博登录哈,搞一个微博去. 第一就是点上面图标库,选择官方和所有都行. 恩接着点一个图标,他就自己跑到 第二个按钮哪里去了,在点第二个按钮,会出来一个创建项目,随便创建 ...

  5. load/get延迟加载和及时加载

    load和get方法的区别: Session.load/get方法均可以根据指定的实体类和id从数据库读取记录,并返回与之对应的实体对象. 区别在于: 如果未能发现符合条件的记录,get方法返回nul ...

  6. webapp 侧边导航效果

    @media (max-width: 767px) .main-sidebar, .left-side { -webkit-transform: translate(-230px, 0); -ms-t ...

  7. Lambda表达式公共拼接函数(原创)

    #region Lambda公共拼接函数 /// <summary> /// LambdaWhere(枚举) /// </summary> public enum Lambda ...

  8. js中的回调函数的理解和使用方法

    js中的回调函数的理解和使用方法 一. 回调函数的作用 js代码会至上而下一条线执行下去,但是有时候我们需要等到一个操作结束之后再进行下一个操作,这时候就需要用到回调函数. 二. 回调函数的解释 因为 ...

  9. 使用 Sublime Text3 编辑 Markdown

    安装插件 可以通过安装 Markdown 的插件来使 Sublime Text3 变成一款 Markdown 编辑器 1.Markdown Preview 插件 输入Shift + Ctrl + P, ...

  10. Properties类使用

    package com.emolay.util; import java.io.IOException; import java.io.InputStream; import java.util.Pr ...