⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 base64.use

📁 java base64
💻 USE
字号:
Base64 1.9 build: 9176 released: 2007-05-20

encode/decode with Base64 and Base64u.

Copyright (c) 2008 Canadian Mind Products.

final class library.
Download from http://mindprod.com/products1.html#BASE64

===> Free <===
Full source included.
You may even include the source code, modified or unmodified
in commercial programs that you write and distribute.
May be used freely for any purpose but military.
For more details on this restriction, see
http://mindprod.com/roedy.html#NONMILITARY
If you include any Canadian Mind Products code in your own applications,
your app too must be labeled non-military use only.
All Java jars and source code are included.

----

Prerequisites:

This program runs under any OS,
(e.g. Win2K/XP/Vista/OSX/Linux/Solaris/Vista64/AIX...) so long as you have
<><> Java version 1.2 <><> or later installed.
See http://mindprod.com/jgloss/installingjava.html for details.

----

Installing on a PC:

Download source and compiled class files to run on your own machine as a part of your own program.
First install a recent Java JDK or JVM.
See http://mindprod.com/jgloss/installingjava.html.
To install, extract the zip download with Winzip
(or similar unzip utility) into any directory you please,
often J:\ --  ticking off the "user folder names" option.


----

Installing on a MacIntosh:

Use Safari to download source and compiled class files to run on your own machine as a part of your own program.
Safari will automatically unpack the zip into ~/Downloads (version 10.5)
[or on the Desktop (version 10.4 and earlier)].
First install a recent Java JDK or JVM.
See http://mindprod.com/jgloss/installingjava.html.
You may optionally move the download tree to a permanent home.


I don't have a MacIntosh, just a PC, so I can't test the programs for Mac compatibility.
In theory they should work without problems, but in practice that does not always happen.
If you have problems please, let me know, preferably with screenshots and complete verbatim error messages.

----

Rebuilding:

The zip already contains the necessary class and jar files, so unless you modify
the program, there is no need to recompile the source or rebuild the jar.
Configure basedir="E:/" in rebuild.xml to the drive where your files are.
Use ANT and rebuild.xml, not build.xml, to recompile and recreate the jar.

----

Use:


Base64 is a freeware way of encoding 8-bit characters using
only ASCII printable characters similar to UUENCODE.
UUENCODE embeds a filename where BASE64 does not. You will
see BASE64 used in encoding digital certificates, in
encoding user:password string in an Authorization: header
for HTTP. The spec is described in RFC 2045.

For more details see http://mindprod.com/jgloss/base64.html

Don't confuse Base64 with x-www-form-urlencoded which
is handled by java.net.URLEncoder.encode/decode or
Base64u.

Base64 armouring uses only the characters A-Z a-z  0-9 +/=.
This makes it suitable for encoding binary data as SQL
strings, that will work no matter what the encoding.
Unfortunately + / and = all have special meaning in URLs.

Base64u gets around this problem. It is a variant on Base64
that uses - _ and * in preference to + / and =, so that it
can be used in URLEncoded contexts with or without
URLEncoding.

Use base64 like this:

// Base64 armouring
import com.mindprod.base64.Base64;
...
// sample byte array to encode
byte[] toSend = { (byte)0xfc, (byte)0x0f, (byte)0xc0};

// create encoder object
Base64 base64 = new Base64();
base64.setLineLength( 72 );  // default

// encoding a byte[]
String send = base64.encoder( toSend );

// decoding a byte[]
byte[] reconstituted = base64.decoder( sent );

use Base64u the same way:

// Base64u armouring
import com.mindprod.base64.Base64u;
...
// sample byte array to encode
byte[] toSend = { (byte)0xfc, (byte)0x0f, (byte)0xc0};

// create encoder object
Base64u base64u = new Base64u();
base64u.setLineLength( 72 );  // default

// encoding a byte[]
String send = base64u.encoder( toSend );

// decoding a byte[]
byte[] reconstituted = base64u.decoder( sent );

For an example that starts and ends with a String, see
Example.java

to run:
java.exe com.mindprod.base64.Example

If your data are too large to encode as one byte array you
need to encode in chunks, keeping in mind that Base64 is a
scheme where 3 bytes are concatenated, then split to form 4
groups of 6-bits each; and each 6-bits gets translated to an
encoded printable ASCII character, via a table lookup.

You must encode groups of 3 bytes together to get 4
chars and decode groups of 4 chars  together to get three
bytes  without a split over a buffer boundary.

One easy way of ensuring that is to make sure all buffers
are a multiple of 12 long.

Version History

1.4 now gets all the lines the same
length. It allows you to configure the line
separator. It now needs a constructor with
instance methods.

1.5 adds Base64u encoding.

1.7 adds an Example, and has the code up to Intellij
code inspector snuff.

1.8 tidies code.

1.9 2007-05-20 adds pad and icon.


⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -