java 临时笔记

  public void beginConnection() throws DBException {
        try {
            con = DriverManager.getConnection("proxool.ZephyrDB");
            System.out.println("连接成功");
        } catch (SQLException e) {
            System.out.println("连接失败");
            e.printStackTrace();
            throw new DBException(e.getMessage());
        } finally {
        }
    }


============================================================


/**
 * <p>Title: </p>
 * <p>Description: 连接池</p>
 * <p>Copyright: Copyright (c) 2006</p>
 * <p>Company:广东有限公司 </p>
 * @author 范庆丰
 * @version 1.0
 */
import java.sql.*;
import javax.sql.*;
import javax.naming.*;
import java.util.Properties;
import org.logicalcobwebs.proxool.ProxoolException;
import org.logicalcobwebs.proxool.configuration.PropertyConfigurator;

public class Conn {
    static Connection conn = null;
    static Connection msconnection = null;

    static{
    try {
        //  System.out.println(getAppHomePath());
                PropertyConfigurator.configure("d:/resin/webapps/ROOT/WEB-INF/classes/proxool.properties");
              // PropertyConfigurator.configure("proxool.properties");
        } catch (ProxoolException e) {
                // TODO Auto-generated catch block
                e.printStackTrace();
        }
    }

    /**
     * 连接数据库 smsapp
     *
     * @return conn
     */
    public static Connection getConn() {

        try {
                conn=DriverManager.getConnection("proxool.property-test");
        } catch (Exception e) {
            System.err
                    .println("Error occur when try to connect to the database");
            System.err.println("Error is " + e.toString());
        }
        return conn;
    }
   
    public static void main(String[] args){
      /*  Conn a=new Conn();
        a.getConn();
        a.getConn();
        a.getConn();
       if( a.getConn()!=null){
           System.out.print("成功");
       }
       else System.out.print("失败");*/


    }
}


===================================================

/**
 * <p>Title: 密码加密MD5算法</p>
 * <p>Copyright: Copyright (c) 2004</p>
 * <p>Company: 广东有限公司</p>
 * @author 网络部 范庆丰
 * @version 1.0
 */

package fg.com;

public class MD5
{
  public MD5(){}
  /*
   * Convert a 32-bit number to a hex string with ls-byte first
   */
  String hex_chr = "0123456789abcdef";
  private String rhex(int num)
  {
    String str = "";
    for(int j = 0; j <= 3; j++)
      str = str + hex_chr.charAt((num >> (j * 8 + 4)) & 0x0F) + hex_chr.charAt((num >> (j * 8)) & 0x0F);
    return str;
  }

  /*
   * Convert a string to a sequence of 16-word blocks, stored as an array.
   * Append padding bits and the length, as described in the MD5 standard.
   */
  private int[] str2blks_MD5(String str)
  {
    int nblk = ((str.length() + 8) >> 6) + 1;
    int[] blks = new int[nblk * 16];
    int i = 0;
    for(i = 0; i < nblk * 16; i++) {
      blks[i] = 0;
    }
    for(i = 0; i < str.length(); i++) {
      blks[i >> 2] |= str.charAt(i) << ((i % 4) * 8);
    }
    blks[i >> 2] |= 0x80 << ((i % 4) * 8);
    blks[nblk * 16 - 2] = str.length()*8;

    return blks;
  }

  /*
   * Add integers, wrapping at 2^32
   */
  private int add(int x, int y)
  {
    return ((x&0x7FFFFFFF) + (y&0x7FFFFFFF)) ^ (x&0x80000000) ^ (y&0x80000000);
  }

  /*
   * Bitwise rotate a 32-bit number to the left
   */
  private int rol(int num, int cnt)
  {
    return (num << cnt) | (num >>> (32 - cnt));
  }

  /*
   * These functions implement the basic operation for each round of the
   * algorithm.
   */
  private int cmn(int q, int a, int b, int x, int s, int t)
  {
    return add(rol(add(add(a, q), add(x, t)), s), b);
  }
  private int ff(int a, int b, int c, int d, int x, int s, int t)
  {
    return cmn((b & c) | ((~b) & d), a, b, x, s, t);
  }
  private int gg(int a, int b, int c, int d, int x, int s, int t)
  {
    return cmn((b & d) | (c & (~d)), a, b, x, s, t);
  }
  private int hh(int a, int b, int c, int d, int x, int s, int t)
  {
    return cmn(b ^ c ^ d, a, b, x, s, t);
  }
  private int ii(int a, int b, int c, int d, int x, int s, int t)
  {
    return cmn(c ^ (b | (~d)), a, b, x, s, t);
  }

  /*
   * Take a string and return the hex representation of its MD5.
   */
  public String toMD5(String str)
  {
    int[] x = str2blks_MD5(str);
    int a = 0x67452301;
    int b = 0xEFCDAB89;
    int c = 0x98BADCFE;
    int d = 0x10325476;

    for(int i = 0; i < x.length; i += 16)
    {
      int olda = a;
      int oldb = b;
      int oldc = c;
      int oldd = d;

      a = ff(a, b, c, d, x[i+ 0], 7 , 0xD76AA478);
      d = ff(d, a, b, c, x[i+ 1], 12, 0xE8C7B756);
      c = ff(c, d, a, b, x[i+ 2], 17, 0x242070DB);
      b = ff(b, c, d, a, x[i+ 3], 22, 0xC1BDCEEE);
      a = ff(a, b, c, d, x[i+ 4], 7 , 0xF57C0FAF);
      d = ff(d, a, b, c, x[i+ 5], 12, 0x4787C62A);
      c = ff(c, d, a, b, x[i+ 6], 17, 0xA8304613);
      b = ff(b, c, d, a, x[i+ 7], 22, 0xFD469501);
      a = ff(a, b, c, d, x[i+ 8], 7 , 0x698098D8);
      d = ff(d, a, b, c, x[i+ 9], 12, 0x8B44F7AF);
      c = ff(c, d, a, b, x[i+10], 17, 0xFFFF5BB1);
      b = ff(b, c, d, a, x[i+11], 22, 0x895CD7BE);
      a = ff(a, b, c, d, x[i+12], 7 , 0x6B901122);
      d = ff(d, a, b, c, x[i+13], 12, 0xFD987193);
      c = ff(c, d, a, b, x[i+14], 17, 0xA679438E);
      b = ff(b, c, d, a, x[i+15], 22, 0x49B40821);

      a = gg(a, b, c, d, x[i+ 1], 5 , 0xF61E2562);
      d = gg(d, a, b, c, x[i+ 6], 9 , 0xC040B340);
      c = gg(c, d, a, b, x[i+11], 14, 0x265E5A51);
      b = gg(b, c, d, a, x[i+ 0], 20, 0xE9B6C7AA);
      a = gg(a, b, c, d, x[i+ 5], 5 , 0xD62F105D);
      d = gg(d, a, b, c, x[i+10], 9 , 0x02441453);
      c = gg(c, d, a, b, x[i+15], 14, 0xD8A1E681);
      b = gg(b, c, d, a, x[i+ 4], 20, 0xE7D3FBC8);
      a = gg(a, b, c, d, x[i+ 9], 5 , 0x21E1CDE6);
      d = gg(d, a, b, c, x[i+14], 9 , 0xC33707D6);
      c = gg(c, d, a, b, x[i+ 3], 14, 0xF4D50D87);
      b = gg(b, c, d, a, x[i+ 8], 20, 0x455A14ED);
      a = gg(a, b, c, d, x[i+13], 5 , 0xA9E3E905);
      d = gg(d, a, b, c, x[i+ 2], 9 , 0xFCEFA3F8);
      c = gg(c, d, a, b, x[i+ 7], 14, 0x676F02D9);
      b = gg(b, c, d, a, x[i+12], 20, 0x8D2A4C8A);

      a = hh(a, b, c, d, x[i+ 5], 4 , 0xFFFA3942);
      d = hh(d, a, b, c, x[i+ 8], 11, 0x8771F681);
      c = hh(c, d, a, b, x[i+11], 16, 0x6D9D6122);
      b = hh(b, c, d, a, x[i+14], 23, 0xFDE5380C);
      a = hh(a, b, c, d, x[i+ 1], 4 , 0xA4BEEA44);
      d = hh(d, a, b, c, x[i+ 4], 11, 0x4BDECFA9);
      c = hh(c, d, a, b, x[i+ 7], 16, 0xF6BB4B60);
      b = hh(b, c, d, a, x[i+10], 23, 0xBEBFBC70);
      a = hh(a, b, c, d, x[i+13], 4 , 0x289B7EC6);
      d = hh(d, a, b, c, x[i+ 0], 11, 0xEAA127FA);
      c = hh(c, d, a, b, x[i+ 3], 16, 0xD4EF3085);
      b = hh(b, c, d, a, x[i+ 6], 23, 0x04881D05);
      a = hh(a, b, c, d, x[i+ 9], 4 , 0xD9D4D039);
      d = hh(d, a, b, c, x[i+12], 11, 0xE6DB99E5);
      c = hh(c, d, a, b, x[i+15], 16, 0x1FA27CF8);
      b = hh(b, c, d, a, x[i+ 2], 23, 0xC4AC5665);

      a = ii(a, b, c, d, x[i+ 0], 6 , 0xF4292244);
      d = ii(d, a, b, c, x[i+ 7], 10, 0x432AFF97);
      c = ii(c, d, a, b, x[i+14], 15, 0xAB9423A7);
      b = ii(b, c, d, a, x[i+ 5], 21, 0xFC93A039);
      a = ii(a, b, c, d, x[i+12], 6 , 0x655B59C3);
      d = ii(d, a, b, c, x[i+ 3], 10, 0x8F0CCC92);
      c = ii(c, d, a, b, x[i+10], 15, 0xFFEFF47D);
      b = ii(b, c, d, a, x[i+ 1], 21, 0x85845DD1);
      a = ii(a, b, c, d, x[i+ 8], 6 , 0x6FA87E4F);
      d = ii(d, a, b, c, x[i+15], 10, 0xFE2CE6E0);
      c = ii(c, d, a, b, x[i+ 6], 15, 0xA3014314);
      b = ii(b, c, d, a, x[i+13], 21, 0x4E0811A1);
      a = ii(a, b, c, d, x[i+ 4], 6 , 0xF7537E82);
      d = ii(d, a, b, c, x[i+11], 10, 0xBD3AF235);
      c = ii(c, d, a, b, x[i+ 2], 15, 0x2AD7D2BB);
      b = ii(b, c, d, a, x[i+ 9], 21, 0xEB86D391);


      a = add(a, olda);
      b = add(b, oldb);
      c = add(c, oldc);
      d = add(d, oldd);
    }
    return rhex(a) + rhex(b) + rhex(c) + rhex(d);
  }
   public static void main(String args[]) {
     MD5 a=new MD5();
     System.out.println(a.toMD5("A0A95260F66B97AB528061B1E7FD758F"));
     System.out.println(a.toMD5("A0A95260F66B97AB528061B1E7FD758F"));
     System.out.println(a.toMD5("18eIf5ATJTZlrusovAkwkP7xCwoCCuPKku7x4wCAuANKoeK74o"));
     //System.out.println(a.toMD5("fdfgdfgdfgdfgfdgdgfdfgdfgdfgdfgdfgdfgdfgqf"));
     //System.out.println(a.toMD5("dfgdfgfgdfgqf"));
     //System.out.println(a.toMD5("zzz"));
  }
}
 

 

======================================

/**
 * <p>Title: 文件的各种操作</p>
 * <p>Copyright: Copyright (c) 2004</p>
 * <p>Company: 广东 有限公司</p>
 * <p>www.fqf.cn</p>
 * @author 网络信息部 范庆丰
 * @version 1.0
 */

package web.com;

import java.io.*;

public class FileOperate {
  public FileOperate() {
  }

  /**
   * 新建目录
   * @param folderPath String 如 c:/fqf
   * @return boolean
   */
  public void newFolder(String folderPath) {
    try {
      String filePath = folderPath;
      filePath = filePath.toString();
      java.io.File myFilePath = new java.io.File(filePath);
      if (!myFilePath.exists()) {
        myFilePath.mkdir();
      }
    }
    catch (Exception e) {
      System.out.println("新建目录操作出错");
      e.printStackTrace();
    }
  }

  /**
   * 新建文件
   * @param filePathAndName String 文件路径及名称 如c:/fqf.txt
   * @param fileContent String 文件内容
   * @return boolean
   */
  public void newFile(String filePathAndName, String fileContent) {

    try {
      String filePath = filePathAndName;
      filePath = filePath.toString();
      File myFilePath = new File(filePath);
      if (!myFilePath.exists()) {
        myFilePath.createNewFile();
      }
      FileWriter resultFile = new FileWriter(myFilePath);
      PrintWriter myFile = new PrintWriter(resultFile);
      String strContent = fileContent;
      myFile.println(strContent);
      resultFile.close();

    }
    catch (Exception e) {
      System.out.println("新建目录操作出错");
      e.printStackTrace();

    }

  }

  /**
   * 删除文件
   * @param filePathAndName String 文件路径及名称 如c:/fqf.txt
   * @param fileContent String
   * @return boolean
   */
  public void delFile(String filePathAndName) {
    try {
      String filePath = filePathAndName;
      filePath = filePath.toString();
      java.io.File myDelFile = new java.io.File(filePath);
      myDelFile.delete();

    }
    catch (Exception e) {
      System.out.println("删除文件操作出错");
      e.printStackTrace();

    }

  }

  /**
   * 删除文件夹
   * @param filePathAndName String 文件夹路径及名称 如c:/fqf
   * @param fileContent String
   * @return boolean
   */
  public void delFolder(String folderPath) {
    try {
      delAllFile(folderPath); //删除完里面所有内容
      String filePath = folderPath;
      filePath = filePath.toString();
      java.io.File myFilePath = new java.io.File(filePath);
      myFilePath.delete(); //删除空文件夹

    }
    catch (Exception e) {
      System.out.println("删除文件夹操作出错");
      e.printStackTrace();

    }

  }

  /**
   * 删除文件夹里面的所有文件
   * @param path String 文件夹路径 如 c:/fqf
   */
  public void delAllFile(String path) {
    File file = new File(path);
    if (!file.exists()) {
      return;
    }
    if (!file.isDirectory()) {
      return;
    }
    String[] tempList = file.list();
    File temp = null;
    for (int i = 0; i < tempList.length; i++) {
      if (path.endsWith(File.separator)) {
        temp = new File(path + tempList[i]);
      }
      else {
        temp = new File(path + File.separator + tempList[i]);
      }
      if (temp.isFile()) {
        temp.delete();
      }
      if (temp.isDirectory()) {
        delAllFile(path+"/"+ tempList[i]);//先删除文件夹里面的文件
        delFolder(path+"/"+ tempList[i]);//再删除空文件夹
      }
    }
  }

  /**
   * 复制单个文件
   * @param oldPath String 原文件路径 如:c:/fqf.txt
   * @param newPath String 复制后路径 如:f:/fqf.txt
   * @return boolean
   */
  public void copyFile(String oldPath, String newPath) {
    try {
      int bytesum = 0;
      int byteread = 0;
      File oldfile = new File(oldPath);
      if (oldfile.exists()) { //文件存在时
        InputStream inStream = new FileInputStream(oldPath); //读入原文件
        FileOutputStream fs = new FileOutputStream(newPath);
        byte[] buffer = new byte[1444];
        int length;
        while ( (byteread = inStream.read(buffer)) != -1) {
          bytesum += byteread; //字节数 文件大小
          System.out.println(bytesum);
          fs.write(buffer, 0, byteread);
        }
        inStream.close();
      }
    }
    catch (Exception e) {
      System.out.println("复制单个文件操作出错");
      e.printStackTrace();

    }

  }

  /**
   * 复制整个文件夹内容
   * @param oldPath String 原文件路径 如:c:/fqf
   * @param newPath String 复制后路径 如:f:/fqf/ff
   * @return boolean
   */
  public void copyFolder(String oldPath, String newPath) {

    try {
      (new File(newPath)).mkdirs(); //如果文件夹不存在 则建立新文件夹
      File a=new File(oldPath);
      String[] file=a.list();
      File temp=null;
      for (int i = 0; i < file.length; i++) {
        if(oldPath.endsWith(File.separator)){
          temp=new File(oldPath+file[i]);
        }
        else{
          temp=new File(oldPath+File.separator+file[i]);
        }

        if(temp.isFile()){
          FileInputStream input = new FileInputStream(temp);
          FileOutputStream output = new FileOutputStream(newPath + "/" +
              (temp.getName()).toString());
          byte[] b = new byte[1024 * 5];
          int len;
          while ( (len = input.read(b)) != -1) {
            output.write(b, 0, len);
          }
          output.flush();
          output.close();
          input.close();
        }
        if(temp.isDirectory()){//如果是子文件夹
          copyFolder(oldPath+"/"+file[i],newPath+"/"+file[i]);
        }
      }
    }
    catch (Exception e) {
      System.out.println("复制整个文件夹内容操作出错");
      e.printStackTrace();

    }

  }

  /**
   * 移动文件到指定目录
   * @param oldPath String 如:c:/fqf.txt
   * @param newPath String 如:d:/fqf.txt
   */
  public void moveFile(String oldPath, String newPath) {
    copyFile(oldPath, newPath);
    delFile(oldPath);

  }

  /**
   * 移动文件夹到指定目录
   * @param oldPath String 如:c:/fqf
   * @param newPath String 如:d:/fqf
   */
  public void moveFolder(String oldPath, String newPath) {
    copyFolder(oldPath, newPath);
    delFolder(oldPath);

  }

  public static void main(String args[]) {
    FileOperate a = new FileOperate();
    //a.delAllFile("c:/b");
    System.out.print("ok");
    //a.delFolder("c:/a");

    //a.moveFolder("c:/b","d:/b");
    //a.delFolder("c:/b");
    //a.copyFolder("c:/fqf/","d:/c");
    a.newFolder("c:/T");

  }
}


这里里面有用到遍历的 

例如

/**
   * 删除文件夹里面的所有文件
   * @param path String 文件夹路径 如 c:/fqf
   */
  public void delAllFile(String path) {
这里


=============================================================================

1、先分享一个类: 用于文件操作的,使用很方便
例如:
FileOperate fo=new FileOperate();
fo.copyFile("c:/1.txt","d:/1.txt");

import java.io.*;

public class FileOperate {
  public FileOperate() {
  }

  /**
   * 新建目录
   * @param folderPath String 如 c:/fqf
   * @return boolean
   */
  public void newFolder(String folderPath) {
    try {
      String filePath = folderPath;
      filePath = filePath.toString();
      java.io.File myFilePath = new java.io.File(filePath);
      if (!myFilePath.exists()) {
        myFilePath.mkdir();
      }
    }
    catch (Exception e) {
      System.out.println("新建目录操作出错");
      e.printStackTrace();
    }
  }

  /**
   * 新建文件
   * @param filePathAndName String 文件路径及名称 如c:/fqf.txt
   * @param fileContent String 文件内容
   * @return boolean
   */
  public void newFile(String filePathAndName, String fileContent) {

    try {
      String filePath = filePathAndName;
      filePath = filePath.toString();
      File myFilePath = new File(filePath);
      if (!myFilePath.exists()) {
        myFilePath.createNewFile();
      }
      FileWriter resultFile = new FileWriter(myFilePath);
      PrintWriter myFile = new PrintWriter(resultFile);
      String strContent = fileContent;
      myFile.println(strContent);
      resultFile.close();

    }
    catch (Exception e) {
      System.out.println("新建目录操作出错");
      e.printStackTrace();

    }

  }

  /**
   * 删除文件
   * @param filePathAndName String 文件路径及名称 如c:/fqf.txt
   * @param fileContent String
   * @return boolean
   */
  public void delFile(String filePathAndName) {
    try {
      String filePath = filePathAndName;
      filePath = filePath.toString();
      java.io.File myDelFile = new java.io.File(filePath);
      myDelFile.delete();

    }
    catch (Exception e) {
      System.out.println("删除文件操作出错");
      e.printStackTrace();

    }

  }

  /**
   * 删除文件夹
   * @param filePathAndName String 文件夹路径及名称 如c:/fqf
   * @param fileContent String
   * @return boolean
   */
  public void delFolder(String folderPath) {
    try {
      delAllFile(folderPath); //删除完里面所有内容
      String filePath = folderPath;
      filePath = filePath.toString();
      java.io.File myFilePath = new java.io.File(filePath);
      myFilePath.delete(); //删除空文件夹

    }
    catch (Exception e) {
      System.out.println("删除文件夹操作出错");
      e.printStackTrace();

    }

  }

  /**
   * 删除文件夹里面的所有文件
   * @param path String 文件夹路径 如 c:/fqf
   */
  public void delAllFile(String path) {
    File file = new File(path);
    if (!file.exists()) {
      return;
    }
    if (!file.isDirectory()) {
      return;
    }
    String[] tempList = file.list();
    File temp = null;
    for (int i = 0; i < tempList.length; i++) {
      if (path.endsWith(File.separator)) {
        temp = new File(path + tempList[i]);
      }
      else {
        temp = new File(path + File.separator + tempList[i]);
      }
      if (temp.isFile()) {
        temp.delete();
      }
      if (temp.isDirectory()) {
        delAllFile(path+"/"+ tempList[i]);//先删除文件夹里面的文件
        delFolder(path+"/"+ tempList[i]);//再删除空文件夹
      }
    }
  }

  /**
   * 复制单个文件
   * @param oldPath String 原文件路径 如:c:/fqf.txt
   * @param newPath String 复制后路径 如:f:/fqf.txt
   * @return boolean
   */
  public void copyFile(String oldPath, String newPath) {
    try {
  System.out.println("************************oldpath="+oldPath);
  System.out.println("************************newpath="+newPath);
      int bytesum = 0;
      int byteread = 0;
      File oldfile = new File(oldPath);
      if (oldfile.exists()) { //文件存在时
        InputStream inStream = new FileInputStream(oldPath); //读入原文件
        FileOutputStream fs = new FileOutputStream(newPath);
        byte[] buffer = new byte[1444];
        int length;
        while ( (byteread = inStream.read(buffer)) != -1) {
          bytesum += byteread; //字节数 文件大小
          System.out.println(bytesum);
          fs.write(buffer, 0, byteread);
        }
        inStream.close();
      }
    }
    catch (Exception e) {
      System.out.println("复制单个文件操作出错");
      e.printStackTrace();

    }

  }

  /**
   * 复制整个文件夹内容
   * @param oldPath String 原文件路径 如:c:/fqf
   * @param newPath String 复制后路径 如:f:/fqf/ff
   * @return boolean
   */
  public void copyFolder(String oldPath, String newPath) {

    try {
      (new File(newPath)).mkdirs(); //如果文件夹不存在 则建立新文件夹
      File a=new File(oldPath);
      String[] file=a.list();
      File temp=null;
      for (int i = 0; i < file.length; i++) {
        if(oldPath.endsWith(File.separator)){
          temp=new File(oldPath+file[i]);
        }
        else{
          temp=new File(oldPath+File.separator+file[i]);
        }

        if(temp.isFile()){
          FileInputStream input = new FileInputStream(temp);
          FileOutputStream output = new FileOutputStream(newPath + "/" +
              (temp.getName()).toString());
          byte[] b = new byte[1024 * 5];
          int len;
          while ( (len = input.read(b)) != -1) {
            output.write(b, 0, len);
          }
          output.flush();
          output.close();
          input.close();
        }
        if(temp.isDirectory()){//如果是子文件夹
          copyFolder(oldPath+"/"+file[i],newPath+"/"+file[i]);
        }
      }
    }
    catch (Exception e) {
      System.out.println("复制整个文件夹内容操作出错");
      e.printStackTrace();

    }

  }

  /**
   * 移动文件到指定目录
   * @param oldPath String 如:c:/fqf.txt
   * @param newPath String 如:d:/fqf.txt
   */
  public void moveFile(String oldPath, String newPath) {
    copyFile(oldPath, newPath);
    delFile(oldPath);

  }

  /**
   * 移动文件到指定目录
   * @param oldPath String 如:c:/fqf.txt
   * @param newPath String 如:d:/fqf.txt
   */
  public void moveFolder(String oldPath, String newPath) {
    copyFolder(oldPath, newPath);
    delFolder(oldPath);

  }
}

2、利用jxl.jar包操作excel

jxl.jar好象网上很难找到下载,如果有需要的可以发短消息给我。关于jxl的资料不难找到,这里只说我用到的。
根据模板文件 m1.xls(普通的没输入值的excel) 建立新的excel文件。


jxl.Workbook wbook1 = jxl.Workbook.getWorkbook(new File("c:/m1.xls"));
//建立只读的wbook1,m1.xls必须以存在
WritableWorkbook copy = Workbook.createWorkbook(new File("d:/new.xls"), wbook1);
//建立可写的copy,  new.xls  为通过wbook1 建立的
WritableSheet sheet1 = copy.getSheet(0);
//建立可写的sheet1, 为索引的第一个  getSheet(0),也就是excel里的第一张表
WritableCell cell;
jxl.write.Label l;
cell = sheet1.getWritableCell(0,0);
l = (jxl.write.Label) cell;
//建立可写的某一格,getWritableCell(0,0) 这里的参数0,0分别代表 列,行
l.setString("aaa");
//修改其值为 aaa

copy.write();
wbook1.close();
copy.close();
//保存并关闭excel表,释放资源



3、打包为zip文件
网上有这种资料,甚至有写好的类,不过我经过一点修改,才能正常使用。类文件如下:

import java.io.File;
import org.apache.tools.zip.ZipOutputStream;
import java.io.FileInputStream;
import java.io.FileOutputStream;

public class CompressBook {   
    public CompressBook() {       
    }

public void zip(String inputFileName,String zipFileName) throws Exception {    
    System.out.println(zipFileName);
    zip(zipFileName, new File(inputFileName)); 
   
    }

 private void zip(String zipFileName, File inputFile) throws Exception {
   ZipOutputStream out = new ZipOutputStream(new FileOutputStream(zipFileName));
   zip(out, inputFile, "");
   System.out.println("zip done");
   out.close();
 }

 private void zip(ZipOutputStream out, File f, String base) throws Exception {
   if (f.isDirectory()) {
     File[] fl = f.listFiles();
     out.putNextEntry(new org.apache.tools.zip.ZipEntry(base + "/"));
     base = base.length() == 0 ? "" : base + "/";
     for (int i = 0; i < fl.length; i++) {
       zip(out, fl[i], base + fl[i].getName());
     }
   }
   else {
     out.putNextEntry(new org.apache.tools.zip.ZipEntry(base));
     FileInputStream in = new FileInputStream(f);
     int b;
     System.out.println(base);
     while ( (b = in.read()) != -1) {
       out.write(b);
     }
     in.close();
   }
 }
}

import java.io.File;
import org.apache.tools.zip.ZipOutputStream;
import java.io.FileInputStream;
import java.io.FileOutputStream;

public class CompressBook {   
    public CompressBook() {       
    }

public void zip(String inputFileName,String zipFileName) throws Exception {    
    System.out.println(zipFileName);
    zip(zipFileName, new File(inputFileName)); 
   
    }

 private void zip(String zipFileName, File inputFile) throws Exception {
   ZipOutputStream out = new ZipOutputStream(new FileOutputStream(zipFileName));
   zip(out, inputFile, "");
   System.out.println("zip done");
   out.close();
 }

 private void zip(ZipOutputStream out, File f, String base) throws Exception {
   if (f.isDirectory()) {
     File[] fl = f.listFiles();
     out.putNextEntry(new org.apache.tools.zip.ZipEntry(base + "/"));
     base = base.length() == 0 ? "" : base + "/";
     for (int i = 0; i < fl.length; i++) {
       zip(out, fl[i], base + fl[i].getName());
     }
   }
   else {
     out.putNextEntry(new org.apache.tools.zip.ZipEntry(base));
     FileInputStream in = new FileInputStream(f);
     int b;
     System.out.println(base);
     while ( (b = in.read()) != -1) {
       out.write(b);
     }
     in.close();
   }
 }
}


4、正则表达式要实现个功能,类似ubb
输入页面输入<@31|测试@> 的信息,处理的时候,将31作为连接的参数
<a href=xx.jsp?id=31>测试</a>

import java.util.regex.*;
String content=transFormat.GBToUnicode(request.getParameter("content"));
//得到 输入的内容,这里的transFormat,是自定义的,用于处理中文字符乱码的问题。
Pattern p=null; //正则表达式
Matcher m=null; //操作的字符串
String s;
p = Pattern.compile("(<@)([//w]*)([//|])([^@>]*)(@>)");
m = p.matcher(content);
s=m.replaceAll("<a href=tudi_xm.jsp?id=$2 target=_blank>$4</a>");

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值