j2me常用的字符,日期,以及转换编码实现
2010-09-15 16:43
639 查看
(源自:http://www.blogjava.net/gooogle/archive/2007/03/26/106461.html?opt=admin)
import java.io.UnsupportedEncodingException; import java.util.Vector; import javax.wireless.messaging.Message; /** * 转换网络传过来的数据 * * @auth colonel * @dateOrLeague 2006-7-11 * */ public class StringUtil { /** * 切割str字符串 * 例如("wuhua,中国,好,",",");分割成String[] s = {"wuhua","中国","好"); * @param str 源字符串 * @param regex,分割标致, * @return */ public static String[] split(String bufferstr, String regex) { if(bufferstr == null) return null; Vector split = new Vector(); while (true) // 处理从网络上获得的数据并对其进行处理 { int index = bufferstr.indexOf(regex); if (index == -1) { if (bufferstr != null && !bufferstr.equals("")) split.addElement(bufferstr); // log.debug("bufferstr=" +bufferstr);s break; } split.addElement(bufferstr.substring(0, index)); // log.debug("Str=" + bufferstr.substring(0, index)); bufferstr = bufferstr.substring(index + 1, bufferstr.length()); // log.debug("bufferstr=" +bufferstr); } String[] s = new String[split.size()]; split.copyInto(s); return s; } /** * 转换网络上的字节为中文 * @param bytes * @param start * @return */ public static String getStringToGBK(byte[] bytes, int start) { byte[] rt = new byte[bytes.length - start]; for (int i = 0; i < rt.length; i++) rt[i] = bytes[i + start]; try { return new String(rt, "UTF-8"); } catch (UnsupportedEncodingException e) { e.printStackTrace(); return new String(rt); } } }
/** * 转换编码 * @author Administrator * */ public class FormatTransfer { public static int getUINT4(byte ba[], int start) { int r = 0; r |= 0xff & ba[start]; r <<= 8; r |= 0xff & ba[start + 1]; r <<= 8; r |= 0xff & ba[start + 2]; r <<= 8; r |= 0xff & ba[start + 3]; return r; } public static void setUINT4(byte ba[], int start, int value) { ba[start] = (byte) (value >> 24 & 0xff); ba[start + 1] = (byte) (value >> 16 & 0xff); ba[start + 2] = (byte) (value >> 8 & 0xff); ba[start + 3] = (byte) (value & 0xff); } public static void setUSHORT4(byte ba[], int start, short value) { ba[start + 0] = (byte) (value >> 8 & 0xff); ba[start + 1] = (byte) (value & 0xff); } public static short getUSHORT4(byte ba[], int start) { short r = 0; r |= 0xff & ba[start]; r <<= 8; r |= 0xff & ba[start + 1]; return r; } public static void appen(byte[] rt, byte[] bodys, int start) { for (int i = 0; i < bodys.length; i++) { rt[start + i] = bodys[i]; } } }
import java.util.Calendar; import java.util.Date; import java.util.TimeZone; /** * <b>类名:DateTime.java</b> </br> 编写日期: 2006-6-23 <br/> 程序功能描述:日期时间的工具类 <br/> * Demo: <br/> Bug: <br/> * * 程序变更日期 :<br/> 变更作者 :<br/> 变更说明 :<br/> * * @author wuhua </br> <a href="mailto:rrq12345@163.com">rrq12345@163.com</a> */ public final class DateTime { private static String[] WEEKDAYS_EN = { "SUN", "MON", "TUE", "WED", "THU", "FRI", "SAT" }; private static String[] WEEKDAYS_CH = { "周日", "周一", "周二", "周三", "周四", "周五", "周六" }; public final String timeZone; public final int year; public final int month; public int day; public int weekday; public final int hour; public final int minute; public final int second; public final int millsecond; Calendar c; public DateTime(Date date, String timeZone) { this.timeZone = timeZone; c = timeZone == null ? Calendar.getInstance() : Calendar .getInstance(TimeZone.getDefault()); c.setTime(date); year = c.get(Calendar.YEAR); month = c.get(Calendar.MONTH); day = c.get(Calendar.DAY_OF_MONTH); weekday = c.get(Calendar.DAY_OF_WEEK); hour = c.get(Calendar.HOUR_OF_DAY); minute = c.get(Calendar.MINUTE); second = c.get(Calendar.SECOND); millsecond = c.get(Calendar.MILLISECOND); } public DateTime(long time, String timeZone) { this(new Date(time), timeZone); } public DateTime() { this(System.currentTimeMillis(), "GMT + 16"); } public static String beforeOneDate() { return new DateTime(System.currentTimeMillis() - 24 * 3600 * 1000, "GMT+8").toDateString(); } public Date toDate() { Calendar c = Calendar.getInstance(TimeZone.getTimeZone(timeZone)); c.set(Calendar.YEAR, year); c.set(Calendar.MONTH, month); c.set(Calendar.DAY_OF_MONTH, day); c.set(Calendar.HOUR_OF_DAY, hour); c.set(Calendar.MINUTE, minute); c.set(Calendar.SECOND, second); c.set(Calendar.MILLISECOND, millsecond); return c.getTime(); } public String toDateString() { if (timeZone.equals("GMT-8")) return (month + 1) + "月" + day + "日" + " [" + WEEKDAYS_EN[weekday - 1] + "] "; else return (month + 1) + "月" + day + "日" + " [" + WEEKDAYS_CH[weekday - 1] + "] "; } public void setDate(int day) { this.day = day; this.c.set(Calendar.DAY_OF_WEEK, day); // day = c.get(Calendar.DAY_OF_WEEK); weekday = c.get(Calendar.DAY_OF_WEEK); } public String toTimeString() { return hour + ":" + minute + ":" + second + ":" + millsecond; } public String toString() { return toDateString() + " " + toTimeString(); } }
相关文章推荐
- j2me常用的字符,日期,以及转换编码实现
- j2me常用的字符,日期,以及转换编码实现
- 日期转换工具以及常用的字符,产生随机数,将java流中的编码转换为utf-8----java
- 关于字符和数字类型的索引,Oracle如何实现内部自动转换以及索引使用的验证测试
- PHP实现gb2312、UTF-8等字符和unicode间的编码转换及PHP版unescape
- 中文环境下安装odoo官方blog模块出现日期转换字符编码出错的解决
- @V@ java代码笔记2010-06-12:java控制台输入各类型类实现;以及判断输入字符串里面是否有数字的两种方法:方法1:转换成字符数组;方法2:正则表达式。
- 字符、字节、编码的概念解析和程序实现以及几种误解解惑
- c#日期转换字符常用格式
- 在J2ME实现UTF-8转换为Unicode编码的方法
- Halcon中循环读取文件的实现以及数字与字符的转换
- char字符与wchar_t字符的相互转换,以及wchar_t字符串的常用用法
- Halcon中循环读取文件的实现以及数字与字符的转换
- iconv C++ 实现 字符 (语言) 编码 转换
- 字符流的基本实现以及编码问题之读操作
- java中字符串处理、串联和转换的几个常用方法,以及如果需要自己编程实现的具体实施步骤。
- 关于字符和数字类型的索引,Oracle如何实现内部自动转换以及索引使用的验证测试
- JavaScript 实现字符与unicode编码的相互转换
- javascript 实现utf8到gb2312的编码 以及字符的utf-8编码
- 使用iconv命令轻松实现linux下字符集编码的转换