Base64编码与解码的java实现
public class Base64 {
//码表
static private char[] alphabet = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/="
.toCharArray();
//codes里存放的是值表
//可以这么理解根据码表中的值可以得到编码前的值
//如codes['A']=0,即为其索引值
static private byte[] codes = new byte[256];
static {
for (int i = 0; i < 256; i++)
codes[i] = -1;
for (int i = 'A'; i <= 'Z'; i++)
codes[i] = (byte) (i - 'A');
for (int i = 'a'; i <= 'z'; i++)
codes[i] = (byte) (26 + i - 'a');
for (int i = '0'; i <= '9'; i++)
codes[i] = (byte) (52 + i - '0');
codes['+'] = 62;
codes['/'] = 63;
}
/**
* 将原始数据编码为base64编码
*/
static public char[] encode(byte[] data) {
//对于原文的字节数量是3的倍数的时候,转换后的字符串理论上将要比原来的长1/3,即原来的4/3.
//当原文的字节数不是3的倍数的时候,不足的地方我们补全.
//故原文补全后的最大长度为 原字符串长度+2
//编码后的长度为(原字符串长度+2)*3/4
char[] out = new char[((data.length + 2) / 3) * 4];
相关文档:
Java NIO API详解
在JDK
1.4以前,Java的IO操作集中在java.io这个包中,是基于流的阻塞(blocking)API。对于大多数应用来说,这样的API使用很方
便,然而,一些对性能要求较高的应用,尤其是服务端应用,往往需要一个更为有效的方式来处理IO。从JDK 1.4起,NIO
API作为一个基于缓冲区,并能提供非阻塞(non-blo ......
例如:一个字符串:123fsf夺
改后要为:1%2%3%f%s%f%夺
代码如下
String a="123fsf夺";
char[] b=a.toCharArray();//字符串拆分成字符
&n ......
J2SE部分:
13本经典的Java书,新人必看:
http://www.ibeifeng.com/read.php?tid=846&u=14387
尚学堂马士兵ooa&ood免费
http://www.ibeifeng.com/read-htm-tid-14397.html&u=14387
Java高清PDF书籍大杂烩
http://www.ibeifeng.com/read.php?tid=4580&u=1438 ......
呵呵!还是先给大家出个题吧!
public class PreferenceTest {
public int testVar = 0;
/**
* create data: 2009-12-30</br> Just for me to test preference.
*
* @author XiangJie
* @param args
*
*/
public static void main(String[] args) {
// TODO Auto-generated method stu ......
java 操作cookie
----------------------------------------------------------------------------------------------------------------------------------------------------
写入cookie
<%
String cookieName="Sender";
Cookie cookie=new Cookie(cookieName, "Test_Content");
cookie.setMaxAge(10);
respo ......