用 Java 通过串口发送手机短信
以下是实现过程,仅供参考:
JAVA_HOME是 C:\jdk1.6.0_02
Path是 %JAVA_HOME%\bin;%JAVA_HOME%\jre\bin
CLASSPATH是 .;%JAVA_HOME%lib;%JAVA_HOME%lib\tools.jar
用 Java
通过串口发短信其实很简单,因为有现成的类库供我们使用。有底层的类库,也有封装好一点的类库,下面我介绍一下在 Win32 平台下发送短信的方法。
如果你想用更底层的类库开发功能更强大的应用程序有两种选择:一个是 SUN Java
Comm(下载地址:javacomm20-win32.zip
),另一个是 RxTx (下载地址:Rxtx.zip)
用这两个类库开发程序的先决条件是你要很好掌握串口的知识,比如 AT
命令等,这些基本知识学起来是需要一定时间的,不过不用担心,现在也有开源的已经封装好的类库供我们使用,这就是 SMSLib - SMS
Processing Libraries (下载地址:SMSLib
),今后的几篇系列文章主要目的就是介绍 SMSLib
的使用,今天首先就是要安装环境了,注意最新的 SMSLib 只能在 JRE5.0 或以后的版本才能运行。
SMSLib 也是构建在 SUN Java
Comm 和 RxTx 基础之上的,这两个类库你可以自己选择,不过 SMSLib 默认采用的是 SUN Java
Java
Comm 编译生成的),
如果你想更换成 RxTx 就需要更改 SMSLib 的源文件并重新编译,具体方法为:
将 src\java
\org\smslib 文件夹下的 CSerialDriver.java
这个文件的 "import javax.comm.*;" 修改为 "import gnu.io.*;",然后用 ant 工具重新编译生成的 jar 文件就是基于 RxTx 实现的。
下面介绍一下 SUN Java
Comm 和 RxTx 的安装过程:
1. SUN Java
Comm:
将 "javax.comm.properties" 拷贝到 "%JREHOME%/lib" 目录
将 "win32com.dll" 拷贝到 "%JREHOME%/bin" 目录下
Jdk里面也有 jre里面也有这些目录,反正都考进去就没问题了,不行就多找找这个名字的目录都考进去
2. RxTx
将 "rxtxSerial.dll" 拷贝到 "%JREHOME%/bin" 目录下
然后将 "comm.jar
(包含在javacomm20-win32.zip里)" 或者 "RXTXComm.jar" 加载到你的工程环境中就可以了,另外还要记着下载 log4j,因为 SMSLib 用到了它。
如果对串口有兴趣的朋友可以去研究一下 AT 命令,直接使用 SUN Java
Comm 和 RxTx 编写应用程序,可以实现更强大的功能。
用 Java
通过串口发送手机短信(二)简单使用
先简单的来介绍一下如何使用 SMSL
相关文档:
//代码经过编译,运行,证明可以运行
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
import javax.swing.event.*;
import java.io.*;
import java.net.*;
import javax.swing.filechooser.FileFilter;
public class Ftp extends JLabel
{
private JButton openButton;
privat ......
最初Java是不支持对文本文件的处理的,为了弥补这个缺憾而引入了Reader和Writer两个类,这两个类都是抽象类,Writer中write(char[] ch,int off,int length),flush()和close()方法为抽象方法,Reader中read(char[] ch,int off,int length)和close()方法是抽象方法。子类应该分别实现他们。
当我们读写文 ......
设p1=(x1, y1), p2=(x2, y2), …, pn=(xn, yn)是平面上n个点构成的集合S,设计算法找出集合S中距离最近的点对。
蛮力算法描述:
int ClosestPoints(int n, int x[ ], int y[ ], int &index1, int &index2)
{
minDist=+∞;
for (i=1; i<n; i++)
&n ......
序列化机制只保存对象的类型信息,属性的类型信息和属性值,和方法没有什么关系,你就是给这个类增加10000个方法,序列化内容也不会增加任何东西
简单来说序列化就是一种用来处理对象流的机制,所谓对象流也就是将对象的内容进行流化,流的概念这里不用多说(就是I/O),我们可以对流化后的对象进行读写操作,也可 ......
1、super(参数):调用基于父类的某一个构造函数(应该为构造函数的第一条语句);
2、this(参数):调用同一个类中其他的构造函数(应该为构造函数的第一条语句)。
3、super:它引用当前直接父类中的成员(用于访问当前直接父类中被隐藏的父类中的数据或方法,父类与子类中有相同的成员定义)
  ......