自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

^-^

^-^

  • 博客(27)
  • 资源 (30)
  • 问答 (1)
  • 收藏
  • 关注

原创 C++中的指针与引用

C++中在函数未被调用时,函数的形参并不占有实际的内存空间,也没有实际的值。只有函数被调用时才为形参分配存储单元,并将实参与形参相结合。每个实参都是一个表达式,其类型必须与形参相符。函数的参数传递指得就是形参与实参结合的过程,形参与实参结合的方式有值传递和引用传递。    值传递是指当发生函数调用时,给形参分配内存空间,并用实参来初始化形参(直接将实参的值传递给形参)。这一过程是参数值的单向传递

2012-12-05 18:25:26 18727

原创 基于管道过滤器的KWIC系统实现(4)

package lws;import java.io.CharArrayWriter;import java.io.IOException;import java.util.ArrayList;import java.util.Iterator;public class LineTransformer extends Filter{ public LineTransformer(Pipe i

2012-12-05 18:25:11 20248

原创 基于管道过滤器的KWIC系统实现(3)

package lws;import java.util.ArrayList;import java.util.Iterator;import java.io.CharArrayWriter;import java.io.IOException;public class Alphabetizer extends Filter{  public Alphabetizer(Pipe input,

2012-12-05 18:25:09 19957

原创 基于管道过滤器的KWIC系统实现(2)

package lws;abstract public class Filter implements Runnable{  protected Pipe input_;  protected Pipe output_;  private boolean is_started_ = false;    public Filter(Pipe input, Pipe output){    inp

2012-12-05 18:25:07 20254

原创 基于管道过滤器的KWIC系统实现(1)

基于管道过滤器的KWIC系统实现。    实现噪声单词过滤以及首单词大写功能。package lws;import java.io.BufferedReader;import java.io.FileInputStream;import java.io.IOException;import java.io.InputStreamReader;import java.util.ArrayLis

2012-12-05 18:25:05 22076 1

原创 Java编写的多线程端口扫描器

Java中的ServerSocket(int port)可以创建本机指定端口的ServerSocket对象,如果创建失败(端口已经被占用,即系统已经创建了此端口的监听对象实体),因此可以用一个ServerSocket对象逐个创建探测,考虑到端口太多,一个线程执行太慢,所以利用了多线程,整个程序运行时间大约为5-10秒。    要注意每个线程中试探的端口号都不能超过0-65535的范围,还需注意释

2012-12-05 18:25:00 22202 1

原创 SurfaceView绘制触摸轨迹闪烁问题的最终解决方案

由于SurfaceView使用双缓存机制,两张画布轮流显示到屏幕上。那么,要存储触摸轨迹并避免两张画布内容不一致造成的闪烁问题,完全可以利用保存绘制过程并不断重新绘制的方法解决闪烁,而且这样还顺带解决了多次试验中偶尔出现的因为moveTo()函数不能读取到参数执行默认设置(参数设为上次的触摸点)而出现的断线连接闪烁问题,详细代码如下:package com.tobacco.touchdraw;

2012-12-05 18:24:56 21475 1

原创 SurfaceView绘制触摸轨迹闪烁的解决方法二

这里利用一个Path对象保存所有的触摸轨迹:package com.tobacco.touchdraw;import android.content.Context;import android.graphics.Canvas;import android.graphics.Color;import android.graphics.Paint;import android.graphics.

2012-12-05 18:24:54 20169

原创 SurfaceView绘制触摸轨迹出现闪烁的解决方法一

这里利用两个path保留对上一个canvas绘制内容,代码如下:package com.tobacco.touchdraw;import android.content.Context;import android.graphics.Canvas;import android.graphics.Color;import android.graphics.Paint;import android

2012-12-05 18:24:52 20603

原创 SurfaceView闪烁问题的根源-双缓存机制

上篇中提到了SurfaceView绘制触摸轨迹时出现的闪烁问题,这里就说明下产生这种困扰的根源——双缓存机制。    Android中的SurfaceView在更新视图时,为了提高更新效率,加强用户体验,采用了双缓存机制。    Android的官方说明有:Note: On each pass you retrieve the Canvas from the SurfaceHolder,

2012-12-05 18:24:50 29037 2

原创 SurfaceView绘制触摸轨迹时的闪烁问题

今天在处理触屏轨迹的绘制时,用到了SurfaceView,建立Path对象,在点击时开始设置Path对象,滑动过程中记录触摸点,离开后重新设置Path对象,因不能阻塞主线程,所以新建了一个子线程来不断刷新屏幕,也就是将path不断绘制。但是,接着就出现了一个问题:屏幕中每条轨迹线的终点都会有一小段直线段不断闪烁。猜测可能是lockCanvas()获取的对象区域不一样,就试着使用了lockCanva

2012-12-05 18:24:48 20525 1

原创 Android线程通信

在第一次启动一个Android程序时,Android会自动创建一个称为主线程的线程,即UI线程。该线程主要是负责控制UI界面的显示、更新和控件交互。例如,在屏幕上按下一个按钮后,UI线程会把这个事件分发给被按按钮,接着按钮设置它自身为被按下状态并向事件队列发送一个无效请求。UI线程会把这个请求移出事件队列并通知按钮在屏幕上重新绘制自身。 在开发Android应用程序时必须遵守单线程模型的原则

2012-12-05 18:24:45 18931

原创 KWIC系统之事件架构实现(输出模块,单词统计类,单词存储类)

package kwic.es;//打印函数包装类//类中包装了两个公有方法:打印经拆分器和排序器处理后的字符串集,以及打印统计后的单词集public class Output{ //打印经过拆分器和排序器处理后的字符串结果集 //传入参数为要打印的LineStorageWrapper类的对象  public void print(LineStorageWrapper shift_storage)

2012-12-05 18:24:43 19998

原创 KWIC系统之事件架构实现(行存储类,行存储包装类,行存储改变事件)

package kwic.es;import java.util.ArrayList;@SuppressWarnings("unchecked")public class LineStorage{//存储的是ArrayList类的对象,每个对象又封装了一个ArrayList对象,存储一个字符串中的单词序列//存储格式:行、单词、字母三级结构,即字符串序号,单词序号,字母序号三级读写结构privat

2012-12-05 18:24:41 19710

原创 KWIC系统之事件架构实现(排序模块,拆分模块,输入模块)

package kwic.es;import java.util.Observable;import java.util.Observer;//排序器,将所有字符串按照字典序排序//监听拆解后字符串集public class Alphabetizer implements Observer{  public void update(Observable observable, Object arg

2012-12-05 18:24:39 20260

原创 KWIC系统之事件架构实现(主程序)

用事件体系结构实现KWIC系统,要求有交互功能,从控制台用键盘输入命令。    主程序如下:package kwic.es;//进程总控制器,初始化资源并触发用户输入监听管理public class KWIC{  public void execute(){ //定义两个字符串容器   //lines存储用户已经输入的字符串,也就是原始字符串   //shifts存储已经处理好了的字符串,

2012-12-05 18:24:37 22480

原创 关于Java中的流

Java2中定义了两种类型的流:字节流和字符流。    字节流为处理字节的输入输出提供了方便的方法。字符流为字符的输入输出处理提供了方便。它们采用了统一的编码标准,因而可以实现国际化。但是在最底层,所有的输入输出都是字节形式的。基于字符的流只为处理字符提供方便的方法。    字节流在底层有两个抽象类InputStream和OutputStream,每个抽象类都有多个具体的子类,这些子类对不同的

2012-12-05 18:24:28 18716

原创 数据的底层存储

数据在硬件底层的存储格式为补码存储。 整数的补码为其原码,而负数的补码为其原码逐位求反(符号位)除外后加1。 程序在运行时,存储或者提取数据,底层硬件都会将其按照指定的格式转化。而运算都是利用补码执行相应的运算后再转化提交。 以下为一个实验:package com.test.codetest;public class NumTest { public static void main(St

2012-12-05 18:24:25 19073

原创 类中的成员以及块

Java语言中的变量定义中有类变量和实例变量之分。 类变量用static修饰符修饰,没有用static修饰的是实例变量。 类变量属于类,而实例变量则是属于每个创建了的实例的。 类变量在类装入时建立并初始化,类变量属于类,不论基于这个类创建了多少个实例(或没有实例),类变量在内存中只保持一份。而实例变量是属于实例的,在实例创建时建立和初始化,每一个实例都会在内存中保持一份属于自己的实例变量。 虽然

2012-12-05 18:24:21 18501

原创 关于Java中的编码

Java中使用的是Unicode编码,所以,字符串都是以Unicode码的方式存储的,而代码的识别也是以Unicode解码方式,所以有时利用输入法输入时可能会产生编译时系统不能解码的错误(比如全角的标点符号)。     Java中的String类提供通过字节数组创建字符串的构造器,这里字节数组内的数据被看作字符的码值。但是同一个码值用不同的解码方式解码会产生不同的结果。所以在利用字节数组创建字符

2012-12-05 18:24:19 18662

原创 关于类的成员与继承的一些思考

在定义类时,类体中除了可以包含变量与方法之外,还可以包含静态初始化块、实例初始化块和构造方法。其中变量和方法称为类的成员。类的成员可以通过类或者类的实例访问或调用,而静态初始化块、实例初始化块和构造方法只能在类装入或者实例创建是由系统隐含调用。 一个类除了自己在类体中定义的成员外,还能够从其直接超类和直接超接口中继承一些成员。 超类中声明为private的成员不会被子类继承。若超类和子类不在同一

2012-12-05 18:24:17 18850

原创 一些实用的电脑小技巧

87.关闭windows的文件保护 默认状态下是无法删除windows系统和程序文件的,所以警告!!!!!!!!!!!!!!!! 注册表:HKEY_LOCAL_MACHINE \SOFTWARE\Microsoft\WindowsNT\Curren tVersion \winlogon 中的“SFCDisable”将它的值改为“ffffff9d” 88.windowsXP的内存优化!!!!!!!

2012-12-05 18:24:13 18731

原创 一些实用的电脑小技巧(1)

电脑高手的140个电脑小技巧1. 重装Windows XP不需再激活   如果你需要重装Windows XP,通常必须重新激活。事实上只要在第一次激活时,备份好Windows\System32目录中的Wpa.dbl文件,就不用再进行激活的工作了。在重装Windows XP后,只需要复制该文件到上面的目录即可。 2. 如何知道自己的Windows XP是否已激活   打开开始→运行,在弹出的对话

2012-12-05 18:24:11 19187

原创 一些实用的快捷键

winkey+d :   这是高手最常用的第一快捷组合键。这个快捷键组合可以将桌面上的所有窗口瞬间最小化,无论是聊天的窗口还是游戏的窗口……只要再次按下这个组合键,刚才的所有窗口都回来了,而且激活的也正是你最小化之前在使用的窗口!    winkey+f : 不用再去移动鼠标点“开始→搜索→文件和文件夹”了,在任何状态下,只要一按winkey+f就会弹出搜索窗口。    winkey+r : 在我

2012-12-05 18:24:06 18409

原创 ASCII码表

Bin             Dec     Hex       缩写/字符                                      解释 0000 0000   0        00          NUL (null)                                      空字符 0000 0001   1        01          SO

2012-12-05 18:24:04 18464

原创 qriority_queue应用

#include #include #includeusing namespace std;class student{            private:                    int score;                    int finance;            public:                   void set(int x,int y

2012-12-05 18:23:52 18817

原创 gcc对于大数的溢出截断

gcc编译器对于大整数常数的溢出截断操作,视为此大整数在更大类型上的补码截断为当前类型。    test.c void test(){ unsigned char a=257; char b=-129; char c=130; char d=255;}D:\>gcc -S test.c -o test.s > test.txttest.c: 在函数‘

2012-12-02 16:10:31 22316

《Python进阶》中文版

《Python进阶》中文版PDF电子书

2016-04-14

Python验证码识别库pytesser

Python验证码识别库pytesser下载

2016-02-05

微信聊天机器人订阅号源代码

用Python编写的微信聊天机器人订阅号源代码

2016-01-28

Python搭建的web接口聊天机器人

用Python搭建的聊天机器人,接口为web形式,运行后可以直接通过url与机器人聊天,url地址为http://localhost/aiml?req=hello(这里hello即为发送给机器人的信息)。用到了aiml开源库。

2016-01-25

Qt写的Windows下屏幕录制程序源码

Qt + ffmpeg写的Windows屏幕录制程序(包含源程序和编译好的可执行程序) 程序使用方法: ScreenCapture w h w和h分别表示希望录制的帧宽度和高度

2014-05-30

windows下MinGW可用的ffmpeg库

Windows下已编译好的ffmpeg库,包含头文件、lib文件以及dll文件,可用MinGW链接。

2014-05-29

Windows开机自启动工具

实现windows下特定程序的开机自启动

2014-05-23

Qt实现的Windows远程控制软件(服务器端+客户端)

用Qt实现的Windows平台远程控制软件,包含源代码和编译后可以运行的程序,服务器端(被控端)为进程形式,客户端(主控端)为图形界面程序。客户端在连接时要设置服务器端的ip地址以及要显示的长度和宽度(不能超过服务器端屏幕分辨率)。

2014-04-30

Linux内核API详解

Linux内核api详解 剖析Linux kernel api

2013-01-22

Advanced Bash Guide(Bash脚本编程)

Bash Shell编程入门 文档详细,语言通俗易懂。

2013-01-22

Linux Shell Scripting(linux shell编程)

Linux Shell编程入门 很详细地介绍Linux Shell编程技术

2013-01-22

Android实现远程控制PC(Android[客户端]+Qt[服务器端])

用Qt【服务器端】+Android【客户端】实现手机远程控制PC,内含服务器和客户端的所有代码。

2012-07-24

Android应用源代码

Android开发的应用案例的源代码,内含:计算器应用,浏览器应用,闹钟,日历,相机,音乐播放器等应用的源代码。

2012-05-15

java学习资源-经典java小程序代码合集

java学习资源,很全的java小程序源码集合:内含扫雷程序,五子棋程序,聊天程序,俄罗斯方块游戏等游戏源码,以及gui编程,io编程,socket编程,serverlet,sql,thread等的详细参考案例代码。

2012-05-15

HexDump源码

C编写的文件查看器源码,可以实现8,10,16进制输出,可以重定向到文件输出。学习C编程时可以作为参考。后期可以自行添加修改文件等功能,本程序代码易扩展功能。

2012-05-15

gdb用户手册(英文原版)

gdb调试器详细说明,英文原版。gdb相信大家都知道是什么的吧,很强大的调试器。

2012-05-04

Windows病毒分析

详细介绍Windows操作系统下的病毒的实现机制以及防范方法。

2012-04-04

C++ Windows程序设计入门

Windows程序设计入门教程,详细说明Windows的内部工作原理以及Windows程序设计的一半步骤以及注意事项,对Windows的消息机制以及Windows程序的编译过程的说明尤为详细,很不错的入门文档。

2012-04-04

C&C++Reference

C以及C++标准库函数,为chm结构文档,便于查阅,文档描述详细,适合新手的好工具。

2012-04-04

Java编写的MVC模式小系统

Java编写的MVC结构小系统,一个画圆的小程序,界面为一个Slider滑块,一个Canvas画布和几个编辑栏,实现改变一个模块的状态,其他模块随之改变。

2012-04-04

Java如何处理ICMP报文的收发

显示如何利用Java进行ICMP网络报文的收发,启发如何利用Java进行网络底层协议的开发。

2012-04-03

SUN公司Java培训教材(中文版)

Sun公司的Java培训教材中文版,详细介绍了如何利用Java进行程序开发,并深入介绍了Java核心技术(Java虚拟机,Java语言,Java Core API),不可多得的参考书。

2012-04-03

KWIC系统事件系统结构实现

KWIC系统基于事件体系结构的java实现,实现字符串的拆分、排序、单词统计功能。

2012-03-07

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除