易截截图软件、单文件、免安装、纯绿色、仅160KB

base64的java实现方法

package cn.eshore.mismp.sms.ws.send;
public class Base64 {
/**
* 将原始数据编码为base64编码
*/
static public char[] encode(byte[] data) {
char[] out = new char[((data.length + 2) / 3) * 4];
for (int i = 0, index = 0; i < data.length; i += 3, index += 4) {
boolean quad = false;
boolean trip = false;
int val = (0xFF & (int) data[i]);
val <<= 8;
if ((i + 1) < data.length) {
val |= (0xFF & (int) data[i + 1]);
trip = true;
}
val <<= 8;
if ((i + 2) < data.length) {
val |= (0xFF & (int) data[i + 2]);
quad = true;
}
out[index + 3] = alphabet[(quad ? (val & 0x3F) : 64)];
val >>= 6;
out[index + 2] = alphabet[(trip ? (val & 0x3F) : 64)];
val >>= 6;
out[index + 1] = alphabet[val & 0x3F];
val >>= 6;
out[index + 0] = alphabet[val & 0x3F];
}
return out;
}
/**
* 将base64编码的数据解码成原始数据
*/
static public byte[] decode(char[] data) {
int len = ((data.length + 3) / 4) * 3;
if (data.length > 0 && data[data.length - 1] == '=')
--len;
if (data.length > 1 && data[data.length - 2] == '=')
--len;
byte[] out = new byte[len];
int shift = 0;
int accum = 0;
int index = 0;
for (int ix = 0; ix < data.length; ix++) {
int value = codes[data[ix] & 0xFF];
if (value >= 0) {
accum <<= 6;
shift += 6;
accum |= value;
if (shift >= 8) {
shift -= 8;
out[index++] = (byte) ((accum >> shift) & 0xff);
}
}
}
if (index != out.length)
throw new Error("miscalculated data length!");
return out;
}
static private char[] alphabet = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/="
.toCharArray();
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] =


相关文档:

NVelocity是Java模板引擎Velocity的.Net版本

NVelocity是Java模板引擎Velocity的.Net版本。NVelocity目前官方版本为0.42。官方地址:http://nvelocity.sourceforge.net/,原作者已经申明不再对NVelocity做技术支持了,所以sourceforge上NVelocity版本一直是0.42不再有更新了。不过目前NVelocity已经有1.0的版本了,是由castleproject项目维护的。NVelocity.dll能在cast ......

java获取当前路径

1、利用System.getProperty()函数获取当前路径: 
System.out.println(System.getProperty("user.dir"));//user.dir指定了当前的路径 
2、使用File提供的函数获取当前路径: 
File directory = new File("");//设定为当前文件夹 
try{ 
    System.out.println(directory.get ......

java 获取今天星期几

package com;
import java.util.*;
public class WhatDay {
 public static void main(String[] args) {
  Calendar c = Calendar.getInstance();
  c.setTime(new Date(System.currentTimeMillis()));
  int dayOfWeek = c.get(Calendar.DAY_OF_WEEK);
  switch (dayOfWeek) {
  ca ......

JAVA语言学校的危险性

    上学时很多问题的答案,可以从下文找到
    JAVA语言学校的危险性
    作者:Joel Spolsky
    译者:阮一峰
    原文: http://www.joelonsoftware.com/articles/ThePerilsofJavaSchools.html
    译文地址:htt ......

Java如何操作Word, Excel, PDF文档?


Java如何操作Word, Excel, PDF文档?
http://www.sina.com.cn 2006年08月23日 14:55 太平洋电脑网







作者:盛忠良
 
  参考:
  http://danadler.com/jacob/
  http://jakarta.apache.org/poi/
  http://www.onjava.com/pub/a/onjava/2003/01/22/poi.html
  http://www.c ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号