完成了J2ME上的JSON解释器和Base64编码工具

J2ME曾经很红火,而且json.org的主页上也有可以运行在J2ME上的JSON解释器,但是现在没有了,不知道为什么,确实有些人认为J2ME太古老,很低端,所以很不屑一顾,但是对於我还是很有用,目前还没有能替代的,於是只好自己写了一个,把能测出来的Bug都改了,源代码可以在这里下载:

http://github.com/Iacob/JsonME

最大的问题是现在事情太多,没有时间写文档,如果大家有认为我这堆代码有用的,可以帮忙写一下文档,写写wiki也可以,非常感谢!

另外还有一个Base64的解释器,也是可以运行在J2ME上的,当然也可以运行在JavaSE上,地址在:

http://github.com/Iacob/EncoderME

在Java中获取目录的大小

import java.io.File;

/**
 *
 * @author Iacob
 */

public class Main {

    public static void main(String args[]) {
       
        long size = 0;
       
        File dir = new File("C:\\"); // 选定要统计的目录
       
        System.out.println(calculateDirectorySize(dir)); // 统计并打印结果
    }
   
    public static long calculateDirectorySize(File dir) {
       
        if (dir == null) {
           
            throw new RuntimeException("Target must not be null.");
        }
       
        if (!dir.isDirectory()) {
           
            throw new RuntimeException("Target must be a directory.");
        }
       
        long directorySize = 0;
       
        File[] files = dir.listFiles();
       
        for (File file:files) {
           
            if (file.isFile()) {
               
                directorySize += file.length();
            }else if (file.isDirectory()) {
               
                directorySize += file.length();
               
                directorySize += calculateDirectorySize(file); // 如果遇到目录则通过递归调用继续统计
            }
        }
       
        return directorySize;
    }
}