• 练习题:Java随机在某个区间中生成n个随机数并升序排列,并把其余位置补0

    数组版

    int min = 1, max = 10, count = 5,n;
    int[] array = new int[min+max];
    do {
        n = new Random().nextInt(max)%(max-min+1) + min;
        if (array[n] == 0) {
            array[n] = n;
            count--;
        }
    } while (count > 0);
    for (int i = min; i <= max; i++) {
        System.out.println(array[i]);
    }
    

    2015-11-26_111602

    List版
    [Read More…]

  • 用Java生成随机密码的方法

    最近各种数据库泄露问题,让我不得不考虑自身密码的强度,下面特意写两种生成密码的方法,已被日后之用;

    介绍两种生成随机密码的方式:(在密码字典里面,可以根据实际需要,手工注释不需要生成的字符段)

    方式一:

    /**
     * 生成随机密码生成方式一
     * 密码字典 -> 随机获取字符
     * @param len 生成密码长度
     * @return
     */
    public static String getPassWordOne(int len){
        int i;  //生成的随机数
        int count = 0; //生成的密码的长度
        // 密码字典
        char[] str = {
                'A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J', 'K', 'L', 'M', 'N', 'O', 'P', 'Q', 'R', 'S', 'T', 'U', 'V', 'W', 'X', 'Y', 'Z',
                'a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j', 'k', 'l', 'm', 'n', 'o', 'p', 'q', 'r', 's', 't', 'u', 'v', 'w', 'x', 'y', 'z',
                '0', '1', '2', '3', '4', '5', '6', '7', '8', '9',
                '~', '!', '@', '#', '$', '%', '^', '-', '+'
        };
        StringBuffer stringBuffer = new StringBuffer("");
        Random r = new Random();
        while(count < len){
            //生成 0 ~ 密码字典-1之间的随机数
            i = r.nextInt(str.length);
            stringBuffer.append(str[i]);
            count ++;
        }
        return stringBuffer.toString();
    }
    

    方式二:
    [Read More…]

  • 给div绑定点击事件三个方法

    基础代码

    <!DOCTYPE html>
    <html lang="en">
    <head>
        <meta charset="UTF-8">
        <title>测试</title>
        <style>
            div {
                font-size: 2em;
                width: 250px;
                cursor: pointer /*变成手型*/
            }
    
            .clickme {
                background-color: #2aabd2;
            }
        </style>
        <script src="//libs.baidu.com/jquery/1.8.3/jquery.min.js"></script>
    </head>
    <body>
    <!--代码位置-->
    </body>
    </html>
    

    [Read More…]

  • Velocity(Java模板引擎)学习笔记

    最近想了解一下Java模板语言方面的知识,发现Velocity比较火,连OSC也在用它,就用两三天时间大概学习入门下;

    官网地址,官方有详细的说明,可以仔细看下。

    下载地址

    这里有一个新的概念,就是Velocity Template Language (VTL),官方有介绍,En不好的也可以Google一下搜索中文文档。
    [Read More…]

  • Foobar2000增加ape支持与转码方法

    默认情况下,Foobar2000不对ape,也就是Monkey’s Audio,下面介绍如何为Foobar2000增加对ape音频文件播放支持和对ape音频文件转码方法;

    为Foobar2000增加音频文件播放支持
    下载:http://www.foobar2000.org/components/view/foo_input_monkey,下载之后安装这个Monkey.fb2k-component插件就好了。之后Foobar2000会提示重启软件,待重启完成后,就可以播放ape音频文件。

    为ape音频文件增加转码方法
    (1)下载Monkey’s Audio转码器,并安装好,在安装目录下找到“MAC.exe”,这个就是在下面Foobar2000用到的ape转码器;
    下载:http://www.monkeysaudio.com/download.html

    (2)打开Foobar2000,添加选中要转码成ape格式的音频文件,依次选择 “Convert” > “Quick Convert > “Add New” > 选择”Encoder”下面的”Custom”
    [Read More…]

  • WAV、FLAC、APE无损音频对比与转换方法

    最近新换一部iPhone手机,发现之前在HTC M7自带音乐播放器可以播放FLAC无损音频歌曲,在iPhone里无法听,很抓狂。看到iPhone自带的播放器支持WAV格式。这样也只好被迫学习下WAV与FALC,FLAC与APE这三个无损音频的区别。

    先科普下:
    什么是WAV
    什么是FLAC
    什么是APE

    看完wikipedia说明,想必有些了解,我在这里简单总结下:
    WAV
    优点:真正音频无损格式,音频格式未经过特别压缩处理;
    缺点:文件体积大。
    硬件支持:几乎所有设备均支持;
    [Read More…]

  • jsonp学习汇总

    为什么要使用jsonp?
    为了解决在不同域名下,即跨域(参考JavaScript同源策略)获取数据的问题。

    这是同域请求

    <script src='//libs.baidu.com/jquery/2.0.0/jquery.min.js'></script>
    <script type="text/javascript">
        $.ajax({
            url: 'http://127.0.0.1/a.json',
            dataType: "json",
            success: function (data) {
                console.log(data);
            }
        });
    </script>
    

    a.json

    {
        "name": "sun",
        "age": 10
    }
    

    2015-07-11_143704

    如果换成跨域?

    <script src='//libs.baidu.com/jquery/2.0.0/jquery.min.js'></script>
    <script type="text/javascript">
        $.ajax({
            url: 'http://www.sun.cn/a.json',
            dataType: "json",
            success: function (data) {
                console.log(data);
            }
        });
    </script>
    

    2015-07-11_144552
    提示跨域了,现在就需要jsonp出马。
    [Read More…]

  • SecureCRT配置记录

    使用SecureCRT远程登录Linux很方便,下面是我设置中的一些记录截图。
    (1)在有些显示器上,显示出的蓝色和背景色太接近,眼睛不好辨认,把蓝色调整成淡蓝色就行。(可选)
    SecureCRT-2
    [Read More…]

  • Chrome.v42无法登录招行和中行网银解决方法

    2015-04-26_112233
    2015-04-26_112533
    最近自动更新Chrome到42.0.2311.90m后,发现无法登录招行大众版网银,去Google查了原因发现是从v42开始Chrome自动关闭了NPAPI,从维基百科了解到Google用意,此处只截取部分:

    正是由于其跨浏览器的特性,插件库的内容更新及管理一般不是由浏览器而是由各个插件提供商自行维护的。这个特点引发了一些安全性上的疑虑[2],Google Chrome提出了名为Pepper的解决方案[3],但没有得到其它厂商,特别是Mozilla基金会的普遍支持[4]。

    2014年11月 Google 宣布 Chrome 将于2015年1月默认屏蔽 NPAPI 插件,9月份会完全移除支持,以鼓励开发者和用户转用 HTML5、Chrome API 或 Google Native Client 等新技术取代 NPAPI。

    [Read More…]

  • WindowsUpdate错误代码800B0100解决方法

    本人亲子测试发现,在更新系统补丁的时候,如果中途强制重新启动机器,再下次重新更新系统补丁的时候会出现“800B0100”这个更新出错的错误代码提示。

    环境:
    OS:正版win7家庭高级版

    从微软官方找两个解决办法:
    方法1:使用官方提供的工具尝试修复这个错误,在本人安装过程中遇到安装中途软件无响应问题,造成无法尝试修复,失败放弃!下载地址:用于 Windows 7 的系统更新准备工具 (KB947821)

    方法2:重命名Softwaredistribution文件夹
    1, 点击开始 〉所有程序 〉附件,右击命令行提示符,选择以管理员身份运行,如果出现用户帐户控制窗口,点击继续。输入“net stop wuauserv”后回车。
    2, 重命名c:\windows下的Softwaredistribution文件夹为SDOLD
    3, 点击开始—〉所有程序—〉附件,右击命令行提示符,选择以管理员身份运行,如果出现用户帐户控制窗口,点击继续。输入“net start wuauserv”后回车。
    4, 删除SDOLD文件夹
    当你完成步骤,请再次运行Windows Update 进行系统更新,就可以看到久违的熟悉页面啦。成功!

    2015-04-24_141128
    [Read More…]