base64 ±à½âÂëµÄ Java ʵÏÖ
/**
* Base64Util for Java
* cheungmine
* 2009-11-8
*/
public class Base64Util {
/**
* @param args
*/
public static void main(String[] args)
{
// Ô´×Ö½ÚÊý×é
int cb = 0;
System.out.print("Ô´×Ö½ÚÊý×é: ");
byte in[] = new byte[100];
in[cb++]='1';
in[cb++]='2';
in[cb++]='3';
in[cb++]='4';
in[cb++]='5';
System.out.write(in, 0, cb);
// ¼ÆËã±àÂëÐèÒªµÄÊä³ö×ֽڳߴç
int cbOut = encodeString( in, cb, null, 0);
// ΪÊä³ö·ÖÅäÊý×é
byte out[] = new byte[cbOut];
// ¿ªÊ¼±àÂë
encodeString( in, cb, out, 0);
// Êä³ö±àÂëÄÚÈÝ
System.out.print("\n±àÂëºóÄÚÈÝ: ");
System.out.write(out, 0, cbOut);
// ¼ÆËã½âÂëÐèÒªµÄ×Ö½Ú
int cbDec = decodeString(out, cbOut, null);
// ·ÖÅä½âÂëÊý×é
byte dec[] = new byte[cbDec];
// ¿ªÊ¼½âÂë
decodeString(out, cbOut, dec);
// Êä³ö½âÂë½á¹û, Õâ¸ö½á¹ûºÍÊä³öÓ¦¸ÃÒ»ÖÂ
System.out.print("\n½âÂëµÄ½á¹û: ");
System.out.write(dec, 0, cbDec);
}
/**
* Translation Table as described in RFC1113
*/
static String cb64="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/";
/**
* Translation Table to decode (created by author)
*/
static String cd64="|$$$}rstuvwxyz{$$$$$$$>?@ABCDEFGHIJKLMNOPQRSTUVW$$$$$$XYZ[\\]^_`abcdefghijklmnopq";
/**
* encodeBlock
*
* encode 3 8-bit binary bytes (in) as 4 '6-bit' characters (out)
*/
static void encodeBlock( byte in[], byte out[], int len )
{
out[0] = (byte) cb64.charAt( in[0] >> 2 );
out[1] = (byte) cb64.charAt( ((in[0] & 0x03) << 4) | ((in[1] & 0xf0) >> 4) );
out[2] = (byte) (len > 1 ? cb64.charAt( ((in[1] & 0x0f) << 2) | ((in[2] & 0xc0) >> 6) ) : '=');
out[3] = (byte) (len > 2 ? cb64.charAt( in[2] & 0x3f ) : '=');
}
/**
* decodeBlock
*
* decode 4 '6-bit' characters into 3 8-bit binary bytes
*/
Ïà¹ØÎĵµ£º
Java ÀíÂÛºÍʵ¼ù: Á˽ⷺÐÍ Ê¶±ðºÍ±ÜÃâѧϰʹÓ÷ºÐ͹ý³ÌÖеÄÏÝÚå
JDK 5.0 ÖÐÔö¼ÓµÄ·ºÐÍÀàÐÍ£¬ÊÇ Java ÓïÑÔÖÐÀàÐͰ²È«µÄÒ»´ÎÖØÒª¸Ä½ø¡£µ«ÊÇ£¬¶ÔÓÚ³õ´ÎʹÓ÷ºÐÍÀàÐ͵ÄÓû§À´Ëµ£¬·ºÐ͵ÄijЩ·½Ãæ¿´ÆðÀ´¿ÉÄܲ»ÈÝÒ×Ã÷°×£¬ÉõÖÁ·Ç³£Ææ¹Ö¡£ÔÚ±¾ÔµÄ"Java Àí ......
1.1 ²»ÓÃnew¹Ø¼ü´Ê´´½¨ÀàµÄʵÀý
ÓÃnew¹Ø¼ü´Ê´´½¨ÀàµÄʵÀýʱ£¬¹¹Ô캯ÊýÁ´ÖеÄËùÓй¹Ô캯Êý¶¼»á±»×Ô¶¯µ÷Óᣵ«Èç¹ûÒ»¸ö¶ÔÏóʵÏÖÁËCloneable½Ó¿Ú£¬ÎÒÃÇ¿ÉÒÔµ÷ÓÃËüµÄclone()·½·¨¡£clone()·½·¨²»»áµ÷ÓÃÈκÎÀ๹Ô캯Êý¡£
ÔÚʹÓÃÉè¼ÆÄ£Ê½£¨Design Pattern£©µÄ³¡ºÏ£¬Èç¹ûÓÃFactoryģʽ´´½¨¶ÔÏó£¬Ôò¸ÄÓÃclone()·½·¨´´½¨Ðµ ......
import java.io.File;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.InputStream;
public class TestIO {
public static void main(String[] args) {
String fileName="E://test.txt";
testInputStream(fileName);
}
public static void testInputStre ......
´úÀíģʽ
´úÀíģʽµÄ×÷ÓÃÊÇ£º
ΪÆäËû¶ÔÏóÌṩһÖÖ´úÀíÒÔ¿ØÖƶÔÕâ¸ö¶ÔÏóµÄ·ÃÎÊ¡£ÔÚijЩÇé¿öÏ£¬Ò»¸ö¿Í»§²»Ïë»òÕß²»ÄÜÖ±½ÓÒýÓÃÁíÒ»¸ö ......
1.¼òµ¥Ï̴߳´½¨
(1)ʵÏÖRunnable½Ó¿Ú£¬Runnable½Ó¿ÚÖ»ÓÐÒ»¸ö·½·¨run:
public interface Runnable
{
void run();
}
´´½¨ÀàʵÏÖrun·½·¨
class MyRunnable implements Runnable
{
public void run()
{
/*ÈÎÎñ´úÂë*/
}
}
(2)´´½¨¶ÔÏó
Runnable r = new MyRunnable();
(3)ÓÉRunnable´´½¨Ò»¸öThread¶ÔÏó:
......