一个Base64解码的程序搞得我想死了...
Eclipse里run,提示木有main方法(哪尼!?).
直接javac,提示一大坨错误,应该是编码的问题,转成ANSI就好了.但是...不顶用啊...运行了没反应...
哪位老师帮我看看怎么弄...最好把从文件读取也用上...
Pastbin地址:   http://pastebin.com/FppknqVv
import java.io.*;
import java.lang.String;
import java.util.Scanner;
//import java.awt.*;
//import java.beans.*;
//import javax.swing.*;public class Base64 { // 从文件中读取,并返回解码后的String
public static String File2String(File file) {
CharArrayWriter caw = new CharArrayWriter();
try {
Reader fr = new FileReader(file);
Reader in = new BufferedReader(fr);
int count = 0;
char[] buf = new char[65535];
while ((count = in.read(buf)) != -1) {
if (count > 0)
caw.write(buf, 0, count);
}
in.close();
} catch (Exception e) {
e.printStackTrace();
} String out = String.valueOf(caw.toCharArray());
return out;
// 但是这样转换到String好像会变成ASCII
} // 从文件中读取,并返回解码后的字符数组
public static char[] File2Char(File file) {
CharArrayWriter caw = new CharArrayWriter();
try {
Reader fr = new FileReader(file);
Reader in = new BufferedReader(fr); int count = 0;
char[] buf = new char[65535]; while ((count = in.read(buf)) != -1) {
if (count > 0)
caw.write(buf, 0, count);
}
in.close();
} catch (Exception e) {
e.printStackTrace();
}
return caw.toCharArray();
} // 从字符串对象中读取内容,并返回解码后的字符数组
public static char[] readChars(String string) {
CharArrayWriter caw = new CharArrayWriter();
try {
Reader sr = new StringReader(string.trim());
Reader in = new BufferedReader(sr);
int count = 0;
char[] buf = new char[65535];
while ((count = in.read(buf)) != -1) {
if (count > 0)
caw.write(buf, 0, count);
}
in.close();
} catch (Exception e) {
e.printStackTrace();
}
return caw.toCharArray();
} public static String readString(String string) {
CharArrayWriter caw = new CharArrayWriter();
try {
Reader sr = new StringReader(string.trim());
Reader in = new BufferedReader(sr);
int count = 0;
char[] buf = new char[65535];
while ((count = in.read(buf)) != -1) {
if (count > 0)
caw.write(buf, 0, count);
}
in.close();
} catch (Exception e) {
e.printStackTrace();
}
String out = String.valueOf(caw.toCharArray());
return out;
} // 写字符数组内容到文本文件
public static void Char2File(File file, char[] data) {
try {
Writer fos = new FileWriter(file);
Writer os = new BufferedWriter(fos);
os.write(data);
os.close();
} catch (Exception e) {
e.printStackTrace();
}
} // 写字符串内容到文本文件
public static void String2File(File file, String data) {
try {
Writer fos = new FileWriter(file);
Writer os = new BufferedWriter(fos);
os.write(data);
os.close();
} catch (Exception e) {
e.printStackTrace();
}
} // main方法
public static void main() {
Scanner scanner = new Scanner(System.in);
String encoded = scanner.next();
System.out.println(readString(encoded));
}}