- 博客(20)
- 资源 (1)
- 收藏
- 关注
原创 LitePal 开源项目使用
一、简介LitePal是开源的Android库,为开发者使用SQLite数据库提供帮助。使用LitePal,开发者使用SQLite不再需要编写SQL语句块,例如创建升级表,CRUD操作,以及统计函数。LitePal的安装使用也是非常简单,不超过5分钟,你就可以把这整合到你的项目里面.
2014-09-24 15:09:58
3810
1
原创 gcc 编译优化选项
在使用GCC编译C代码时,可以使用-O选项对代码的执行效率以及目标文件的大小进行优化,下面是详细说明:-O设置一共有五种:-O0、-O1、-O2、-O3和-Os,你只能选择其中的一种除了-O0以外,每一个-O设置都会多启用几个选项,请查阅gcc手册的优化选项章节,以便了解每个-O等级启用了哪些选项及它们有何作用。让我们来逐一考察各个优化等级:-O0:这个等级
2014-03-20 17:32:30
1258
原创 java实现caesar加解密算法
凯撒大帝不仅战功卓越,同时对密码算法也是很有研究啊。下面要介绍的加密算法就是由其本人研究并在战争中使用,包括对后人也有着深远的影响。好了,不扯淡了,下面步入正题。 凯撒加密(Caesar cipher)是一种简单的消息编码方式:它根据字母表将消息中的每个字母移动常量位k。举个例子如果k等于3,则在编码后的消息中,每个字母都会向后移动3位:a会被替换为d;b会被替换成e;依此类推。字母
2014-03-15 19:43:39
2446
原创 Java与C#通过MD5进行文件签名
在使用网络下载文件时,有时候需要对文件的完整性进行验证,防止文件下载过程中被恶意篡改。解决思路是可以通过服务器端对文件进行MD5签名,客户端下载文件完成后,也对下载文件进行签名,然后与服务器端的MD5签名进行比较,如果一致则认为文件是完整的,否则是错误的。下面分别贴出Java和C#的对文件进行MD5签名的代码。1. MD5FileUtil.javaimport java.io.Fi
2014-03-04 13:22:02
1942
原创 Java byte数组和int互转
1. 在Java语言中,将int数值转成4个字节的byte数组表示public static byte[] intToByteArray(int i) { byte[] result = new byte[4]; // 由高位到低位 result[0] = (byte) ((i >> 24) & 0xFF); result[1] = (byte) ((i >> 16) & 0x
2014-02-25 17:01:08
1492
原创 大家都来设计模式---适配器(Adapter)模式
1. 概念 适配器模式把一个类的接口变换成客户端所期待的另一种接口,从而使原本因接口不匹配而无法在一起工作的两个类能够在一起工作2. 应用场景 1) 系统需要使用现有的类,而此类的接口不符合系统的需要 2) 想要建立一个可以重复使用的类,用于与一些彼此之间没有太大关联的一些类,包括一些可能在将来引进的类一起工作,这些源类不一定有很复杂的接
2014-02-24 14:52:58
645
原创 大家都来设计模式---桥梁(Bridge)模式
1. 概念 桥梁模式虽然不是一个使用频率很高的模式,但是熟悉这个模式对于理解面向对象的设计原则,包括”开-闭”原则(OCP)以及组合/聚合复用原则(CARP)都很有帮助 桥梁模式的用意“将抽象化与实现化脱耦,使得二者可以独立地变化”。 下面通过大家所熟知的JDBC驱动器来了解一下桥梁模式的结构。JDBC为所有的关系数据库提供一个
2014-02-21 17:46:52
1304
原创 Application did not close the cursor or database object that was opened here 异常
今天在调用Android自带的sqlite数据库时,遇到了下面的异常02-21 16:05:56.208: E/SQLiteDatabase(8789): close() was never explicitly called on database '/data/data/com.joyveb.tools/databases/lotteryTools.db' 02-21 16:05:56
2014-02-21 16:39:50
2342
原创 大家都来设计模式---门面(Facade)模式
1. 概念 Facade模式要求一个子系统的外部与其内部的通信必须通过一个统一的门面对象进行。门面对象提供一个高层次的接口,使得子系统更易于使用 如图所示,大方框代表整个系统边界,外面的
2014-02-18 14:41:15
843
原创 Android -- jar包混淆
1. 什么是代码混淆代码混淆是将计算机程序的代码,转换成一种功能上等价,但是难于阅读和理解的形式的行为。防止其它用户使用反编译软件获得我方代码,增加代码的安全性。例如我们与其它公司进行技术协作,我们需要为对方提供Jar包,但不想将源代码泄露给对方,这时可以通过代码混淆技术来对代码进行保护。2. Android系统中怎样对jar包进行混淆Android的sdk中提供了专门进行代码混淆
2014-02-16 18:28:49
1207
转载 LomBok 简介
一、 什么是LomBoklombok 提供了简单的注解的形式来帮助我们简化消除一些必须有但显得很臃肿的 java 代码二、安装使用 lombok 是需要安装的,如果不安装,IDE 则无法解析 lombok 注解。1. 先在官网(http://projectlombok.org/ )下载最新版本的 JAR 包2. 将下载的 lombok.jar 复制到ecl
2014-02-08 15:17:36
963
原创 eclipse导出jar包时去除svn文件夹
在使用eclipse导出jar包或者war包时,如果项目中存在.svn文件,导出的目标文件中也会包含svn文件夹,通过下面的设置可以将svn目录过滤掉右键点击项目名称,在弹出的菜单栏中选择Properties -> Resource ->ResourceFilters->Add,在弹出的面板中选择Exclude All ->Files and Folders->All children (re
2014-02-08 14:52:33
1818
原创 C#和java的Md5结果一致性算法
//JAVA代码private static String getMD5Str(String str) { MessageDigest messageDigest = null; try { messageDigest = MessageDigest.getInstance("MD5"); messageDigest.reset();
2012-07-21 16:54:06
930
原创 C# Datetime转成java毫秒数
//将java的毫秒数转换成C# 的DateTime public DateTime ConvertJavaMiliSecondToDateTime(long javaMS) { DateTime UTCBaseTime = new DateTime(1970, 1, 1, 0, 0, 0, DateTimeKind.Utc);
2012-07-21 16:50:56
3294
原创 C# 数字转换成数组
/// /// 将整型转成整型数组 /// /// 10 转成 num[0]=1 num[1]=0 /// 整型数字 /// 返回的实际大小,即数组长度 /// 整型数组 private int[] getNumHash(int showNumber, ref in
2012-07-21 16:45:35
3593
原创 C# 切分图片
实际工作时用到的C# 切分图片的代码,可以将一张整图按行和列切分成固定大小的N张小图,索引从第1行开始0..n,再从第2行开始n+1...n+2n,请参考 /// /// 按行、列分割原始图片 /// /// 行数 /// 列数 /// 原始图
2012-07-21 16:42:11
1595
转载 Eclipse 快捷键大全
基本Ctrl+1 快速修复(最经典的快捷键,就不用多说了)Ctrl+D: 删除当前行 Ctrl+Alt+↓ 复制当前行到下一行(复制增加)Ctrl+Alt+↑ 复制当前行到上一行(复制增加)Alt+↓ 当前行和下面一行交互位置(特别实用,可以省去先剪切,再粘贴了)Alt+↑ 当前行和上面一行交互位置(同上)Alt+← 前一个编辑的页面Alt+→ 下一个编辑的页面(当
2012-06-05 14:52:56
356
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人