📄 pdudataformat.java
字号:
package com.sunfruit.comm.util;
/**
* <p>Title: </p>
*
* <p>Description: </p>
*
* <p>Copyright: Copyright (c) 2005</p>
*
* <p>Company: </p>
*
* @author not attributable
* @version 1.0
*/
public class PDUDataFormat {
private static String phone="";
public PDUDataFormat() {
}
/**
* 获得发送的PDU字符串
* @param from String 发送人手机所在的短信中心的号码
* @param send String 收件人手机号
* @param content String 内容
* @return String
*/
public static String getPDUCoding(String send, String contentHex) {
String leng = getIntToHex(contentHex.length() / 2).toUpperCase();
String lengHex=getIntToHex(send.length()).toUpperCase();
String use86="";
if (GetResource.getCenterNumber().isUse86())
use86="91";
else
use86="81";
String str1="11";
String str2="08";
phone = str1+"00"+lengHex+use86 + getSendNumber(send,false) + "00"+str2+"00" + leng + contentHex;
return getCenterNumber() + phone;
}
private static String getCenterNumber() {
return "0891" + getSendNumber(GetResource.getCenterNumber().getCenternumber(),true);
}
/**
* 将字符串转换为16进制
* @param str1 String
* @return String
*/
public static String getASCII(String str1) {
String retstr = "";
for (int i = 0; i < str1.length(); i++) {
String strtemp = str1.substring(i, i + 1);
char[] chars = strtemp.toCharArray();
for (int j = 0; j < chars.length; j++) {
if (strtemp.getBytes().length == 1) {
retstr += "00";
}
retstr += Integer.toHexString(chars[j]).toUpperCase();
}
}
return retstr;
}
/**
* 将手机号进行转换
* @param str1 String 手机号
* @param addtag boolean 是否加86
* @return String
*/
private static String getSendNumber(String str1,boolean addtag) {
String retstr = "";
if (GetResource.getCenterNumber().isUse86() || addtag)
str1 = "86" + str1;
str1 += "F";
for (int i = 0; i < str1.length(); ) {
String strtemp = str1.substring(i, i + 2);
retstr += strtemp.substring(1, 2) + strtemp.substring(0, 1);
i += 2;
}
return retstr;
}
public static String getIntToHex(int i)
{
String leng=Integer.toHexString(i);
if (leng.length() == 1)
leng = "0" + leng;
return leng;
}
public static int getPDULength() {
return phone.length() / 2;
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -