`
nudtgk2000
  • 浏览: 72991 次
  • 性别: Icon_minigender_1
  • 来自: 大连
社区版块
存档分类
最新评论

【转载】java 文件操作大全(2)

阅读更多
所有代码转载时未经测试
35.合并一个文件下所有的文件
File combinefiles = new File(%%1); 
File[] files = combinefiles.listFiles(); 
FileOutputStream fs; 
try { 
    fs = new FileOutputStream(new File(%%2)); 
} catch(IOException e) { 
    e.printStackTrace(); 
} 
for (int i = 0; i < files.length; i++) { 
    if (files[i].isFile()) { 
        int bytesum=0; 
        int byteread=0; 
        try {  
            FileInputStream inStream = new FileInputStream(files[i]); 
            byte[] buffer = new byte[5120]; 
            int length; 
            while ((byteread=inStream.read(buffer)) != -1) { 
                bytesum += byteread; 
                fs.write(buffer,0,byteread); 
            } 
            inStream.close(); 
        } catch(Exception e) { //复制文件出错 
            e.printStackTrace(); 
        } 
    } 
} 
try { 
    fs.close(); 
} catch (IOException e) { 
    e.printStackTrace(); 
}

36.写入ini文件属性
//import java.io.*; 
//import java.util.*; 
//import java.util.regex.*;  
//private HashMap configMap = null; 
private Map<String, Serializable> configMap = null; 
if (configMap == null) { 
    String strLine = null; 
    String currentNode = null; 
    String previousNode = null; 
    Vector<Properties> vec = new Vector<Properties>(); 
    int row=0; 
    FileReader fileReader = null; 
    try { 
        fileReader = new FileReader(%%1); 
    } catch (FileNotFoundException e1) { 
        e1.printStackTrace(); 
    } 
    BufferedReader bufferedReader = new BufferedReader(fileReader); 
    try { 
        while ((strLine=bufferedReader.readLine()) != null) { 
            String oneLine = strLine.trim(); 
            if (oneLine.length() >= 1) { 
                Pattern p = Pattern.compile("\\[\\s*.*\\s*\\]"); 
                int nodelen = oneLine.split("[;]").length; 
                String[] strArray1 = new String[4]; 
                if (nodelen == 1) { 
                    oneLine = oneLine.split("[;]")[0].trim(); 
                } else if (nodelen == 2) { 
                    strArray1[3] = oneLine.split("[;]")[1].trim(); 
                    oneLine = oneLine.split("[;]")[0].trim(); 
                } 
                Matcher m = p.matcher(oneLine); 
                if (m.matches()) { 
                    strArray1[0] = "@Node"; 
                    strArray1[1] = oneLine; 
                    strArray1[2] = ""; 
                } else { 
                    int keylen = oneLine.split("=").length; 
                    if (keylen == 1) { 
                        strArray1[0] = "@Key"; 
                        strArray1[1] = oneLine.split("=")[0]; 
                        strArray1[2] = ""; 
                    } else if (keylen == 2) { 
                        strArray1[0] = "@Key"; 
                        strArray1[1] = oneLine.split("=")[0]; 
                        strArray1[2] = oneLine.split("=")[1]; 
                    } else { 
                        strArray1[0] = "@ElementError"; 
                        strArray1[1] = ""; 
                        strArray1[2] = ""; 
                        strArray1[3] = ""; 
                    } 
                } 
                if (strArray1[0].equals("@Node")) { 
                    previousNode = currentNode; 
                    currentNode = strArray1[1]; 
                    if (row > 0) { 
                        configMap.put(previousNode,vec.elementAt(0)); //"size:"+configMap.size() 
                        vec.clear(); 
                        row = 0; 
                    } 
                } else if (strArray1[0].equals("@Key") && row==0) { 
                    Properties ht = new Properties(); 
                    ht.setProperty(strArray1[1],strArray1[2]); 
                    vec.add(0,ht); 
                    row++; 
                } else if (strArray1[0].equals("@Key") && row>0) { 
                    Properties ht2 = new Properties(); 
                    ht2.put(strArray1[1],strArray1[2]); 
                    vec.clear(); 
                    vec.add(0,ht2); 
                    row++; 
                } 
            }//if 
        }//while 
        configMap.put(currentNode,vec.elementAt(0)); 
    } catch (FileNotFoundException e) { 
        configMap=null; 
        e.printStackTrace(); 
    } catch (IOException e) { 
        configMap=null; 
        e.printStackTrace(); 
    } finally { 
        vec.clear();
        try { 
            bufferedReader.close(); 
            fileReader.close(); 
        } catch (IOException e) { 
            e.printStackTrace(); 
        } 
    } 
}//if 
String nodeKey = "[" + %%2 + "]"; 
Properties ht = null; 
if (configMap.containsKey(nodeKey)) { 
    ht = (Properties)configMap.get(nodeKey); 
} else { 
    ht = (Properties)configMap.put(nodeKey, %%3); 
} 
try { 
    ht.setProperty(%%3, %%4); 
} catch (NullPointException e) {  
    e.printStackTrace(); 
} 
FileWriter fw = null; 
BufferedWriter bw = null; 
try { 
    fw = new FileWriter(%%1); 
    bw = new BufferedWriter(fw); 
} catch (IOException e) { 
    e.printStackTrace(); 
} 
Set keys = configMap.keySet(); 
Iterator ite = keys.iterator(); 
while (ite.hasNext()) { 
    String oneKey = (String)ite.next(); 
    try { 
        bw.write(oneKey + "\n"); 
    } catch (IOException e) { 
        e.printStackTrace(); 
    } 
    ht = (Properties)configMap.get(oneKey); 
    ht.list(new PrintWriter(bw, true)); 
}

37.获得当前路径
String %%1 = this.getClass().getResource("/").getPath();

38.读取XML数据库
//import java.io.*; 
//import javax.xml.parsers.*; 
//import org.xml.sax.*; 
//import org.w3c.dom.*; 
private Document document; 
File xml_file = new File(%%1); 
DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance(); 
try { 
    DocumentBuilder builder = factory.newDocumentBuilder(); 
    document = builder.parse(xml_file); 
} catch (Exception e) { 
    e.printStackTrace(); 
} 
String subNodeTag = %%2; 
Element rootNode = document.getDocumentElement(); 
//%%2="serverList" //%%4="id" //%%6="port" //%%3="server" //%%5="ipaddr" 
NodeList nlist = rootNode.getElementsByTagName(subNodeTag); 
int len = nlist.getLength(); 
Node x = null; 
for (int i = 0; i < len; i++) { 
    x = nlist.item(i); 
    String getNodeAttrValue = null; 
    NamedNodeMap attrList = node.getAttributes(); 
    for (int j = 0; j < attrList.getLength(); j++) { 
        if (attrList.item(j).getNodeName().compareTo(%%7) == 0) { 
            getNodeAttrValue = attrList.item(j).getNodeValue(); 
            break; 
        } 
    } 
    if (getNodeAttrValue.compareTo(%%8) == 0) {
        break; 
    } 
    String %%9 = null; 
    if (x != null) { 
        NodeList nlist = node.getChildNodes(); 
        int len = nlist.getLength(); 
        Node currentNode; 
        String nodeName; 
        for (int i = 0; i < len; i++) { 
            currentNode = nlist.item(i); 
            nodeName = currentNode.getNodeName(); 
            if (nodeName.equals(%%5) == 0) { 
                %%9 = document.getElementValue(currentNode); 
                break; 
            } 
        } 
    }
}//for

39.写入XML数据库
//import java.io.*; 
//import javax.xml.parsers.*; 
//import org.xml.sax.*; 
//import org.w3c.dom.*; 
//import javax.xml.transform.*; 
//import javax.xml.transform.dom.*; 
//import javax.xml.transform.stream.*; 
private Document document; 
private Element node; 
File xml_file = new File(%%1); 
DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance(); 
try { 
    DocumentBuilder builder = factory.newDocumentBuilder(); 
    document = builder.parse(xml_file); 
} catch (Exception e) { 
    e.printStackTrace(); 
} 
String subNodeTag = %%2; 
Element rootNode = document.getDocumentElement(); 
//%%2="serverList" //%%4="id" //%%6="port" //%%3="server" //%%5="ipaddr" 
NodeList nlist = rootNode.getElementByTagName(subNodeTag); 
node = document.createElement(%%3); 
node.setAttribute(%%4, nlist.getLength()+1).toString()); 
node.appendChild(document.createTextNode("\n")); 
Element ipNode = document.createElement(%%5); 
ipNode.appendChild(document.createTextNode(%%8)); 
node.appendChild(ipNode); 
node.appendChild(document.createTextNode("\n"); 
Element port = document.createElement(%%6); 
port.appendChild(document.createTextNode(%%9)); 
node.appendChild(port); 
node.appendChild(document.createTextNode("\n")); 
nlist.appendChild(node); 
TransformerFactory tFactory = TransformerFactory.newInstance(); 
Transformer transformer = null; 
try { 
    transformer = tFactory.newTransformer(); 
    DOMSource source = new DOMSource(document); 
    StreamResult result = new StreamResult(xml_file); 
    transformer.transform(source, result); 
} catch (Exception e) { 
    e.printStackTrace(); 
}

40.ZIP压缩文件
//import java.io.*; 
//import java.util.zip.*; 
try {
    //创建文件输入流对象 
    FileInputStream fis = new FileInputStream(%%1); 
    //创建文件输出流对象 
    FileOutputStream fos = new FileOutputStream(%%2); 
    //创建ZIP数据输出流对象 
    ZipOutputStream zipOut = new ZipOutputStream(fos); 
    //创建指向压缩原始文件的入口 
    ZipEntry entry = new ZipEntry(args[0]); 
    zipOut.putNextEntry(entry); 
    //向压缩文件中输出数据 
    int nNumber; 
    byte[] buffer = new byte[1024]; 
    while ((nNumber=fis.read(buffer))!=-1) {
        zipOut.write(buffer,0,nNumber); 
    }
    //关闭创建的流对象 
    zipOut.close(); 
    fos.close(); 
    fis.close(); 
} catch(IOException e) { 
    System.out.println(e); 
}

41.获得应用程序完整路径
String %%1 = System.getProperty("user.dir");

42.ZIP解压缩
//import java.io.*; 
//import java.util.zip.*; 
try { 
    //创建文件输入流对象实例 
    FileInputStream fis = new FileInputStream(%%1); 
    //创建ZIP压缩格式输入流对象实例 
    ZipInputStream zipin = new ZipInputStream(fis); 
    //创建文件输出流对象实例 
    FileOutputStream fos = new FileOutputStream(%%2); 
    //获取Entry对象实例 
    ZipEntry entry = zipin.getNextEntry(); 
    byte[] buffer = new byte[1024]; 
    int nNumber; 
    while ((nNumber=zipin.read(buffer,0,buffer.length))!=-1) {
        fos.write(buffer,0,nNumber); 
    }
    //关闭文件流对象 
    zipin.close(); 
    fos.close(); 
    fis.close(); 
} catch (IOException e) { 
    System.out.println(e); 
}

43.递归删除目录中的文件
//import java.io.*; 
//import java.util.*; 
ArrayList<String> folderList = new ArrayList<String>(); 
folderList.add(%%1); 
for (int j = 0; j < folderList.size(); j++) { 
    File file = new File(folderList.get(j)); 
    File[] files = file.listFiles(); 
    ArrayList<File> fileList = new ArrayList<File>(); 
    for (int i = 0; i < files.length; i++) { 
        if (files[i].isDirectory()) { 
            folderList.add(files[i].getPath()); 
        } else { 
            fileList.add(files[i]); 
        } 
    } 
    for (File f : fileList) { 
        f.delete(); 
    } 
}

43.ZIP压缩文件夹
//import java.io.*; 
//import org.apache.tools.zip.ZipOutputStream; //这个包在ant.jar里,要到官方网下载 
//import java.util.zip.*; 
try { 
String zipFileName = %%2; //打包后文件名字 
File f=new File(%%1); 
ZipOutputStream out = new ZipOutputStream(new FileOutputStream(zipFileName)); 
String base= ""; 
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; 
 while ( (b = in.read()) != -1) { 
 out.write(b); 
} 
in.close(); 
} 
out.close(); 
}catch (Exception ex) { 
 ex.printStackTrace(); 
}

44.Java验证DTD
//import java.io.*; 
//import javax.xml.parsers.*; 
//import org.xml.sax.*; 
//import org.w3c.dom.*; 
try {  
    InputStream in = new FileInputStream(filePath);  
    SAXReader saxReader = new SAXReader();  
    this.document = saxReader.read(in);  
    DocumentBuilderFactory factory = null;  
    factory = DocumentBuilderFactory.newInstance();  
     //进行dtd检查  
    factory.setValidating(true);  
} catch (Exception e) { }

47.直接创建多级目录
//import java.io.*;  
File f = new File(%%1); 
f.mkdirs();

48.批量重命名
//import java.io.*; 
File target = new File("%%1"); 
String[] files = target.list(); 
File f = null; 
String filename = null; 
for (String file : files) { 
    f = new File(fl, file); 
    filename = f.getName(); 
    if (filename.substring(filename.lastIndexOf 

(".")).equalsIgnoreCase( 
"%%2")) { 
        f.renameTo(new File(target.getAbsolutePath(), filename.replace( 
"%%2", "%%3"))); // 这里可以反复使用replace替换,当然也可以使用正则表达式来替换了 ".txt" ".bat" 
    } 
}

49.文本查找替换
//import java.nio.*; 
String s1 = %%1; 
String s2 = %%2; 
String s3 = %%3; 
int pos = %%4; 
/*变量i和j分别表示主串和模式串中当前字符串的位置,k表示匹配次数*/ 
int i,j,k = 0; 
i = pos; 
j = 0; 
//将s1转化成StringBuffer型进行操作 
repStr = new StringBuffer(s1); 
while (i<repStr.length() && j<s2.length()) { 
    if (repStr.charAt(i) == s2.charAt(j)) { 
        ++i;
        ++j; 
        if(j==s2.length()) { 
            /* j=s2.length()表示字符串匹配成功,匹配次数加1,此外对主串进行字符串替换 */ 
            k = k+1; 
            repStr.replace(i-j, i, s3); 
            //将j进行重新赋值开始新的比较 
            j = 0; 
        } 
    } else {
        i = i-j+1; 
        j = 0;
    } 
} 
return k;

50.文件关联
//import java.io.*; 
try { 
    Runtime.getRuntime().exec(%%1); //"assoc .txt =mynote" "assoc [.ext[=[filetype]]]"  
} catch (IOException e) { 
    e.printStackTrace(); 
}

52.设置JDK环境变量
@echo off  
IF EXIST %1\bin\java.exe (  
    rem 如输入正确的 Java2SDK 安装目录,开始设置环境变量  
    @setx JAVA_HOME %1  
    @setx path %path%; %JAVA_HOME%\bin  
    @setx classpath %classpath%;.  
    @setx classpath %classpath%; %JAVA_HOME%\lib\tools.jar  
    @setx classpath %classpath%; %JAVA_HOME%\lib\dt.jar  
    @setx classpath %classpath%; %JAVA_HOME%\jre\lib\rt.jar  
    @echo on  
    @echo Java 2 SDK 环境参数设置完毕,正常退出。  
) ELSE (  
    IF "%1"=="" (  
        rem 如没有提供安装目录,提示之后退出 
        @echo on 
        @echo 没有提供 Java2SDK 的安装目录,不做任何设置,现在退出环境变量设置。 
    ) ELSE ( 
        rem 如果提供非空的安装目录但没有bin\java.exe,则指定的目录为错误的目录 
        @echo on 
        @echo 非法的 Java2SDK 的安装目录,不做任何设置,现在退出环境变量设置。 
    ) 
) 

//http://sourceforge.net/projects/jregistrykey/ 
//import ca.beq.util.win32.registry.*; 
//import java.util.*; 
//1.打开键 
RegistryKey r = new RegistryKey(RootKey.HKEY_LOCAL_MACHINE, "SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Explorer\\Shell Folders"); 
//2.添加键 
RegistryKey r = new RegistryKey(RootKey.HKEY_CURRENT_USER, "Software\\BEQ Technologies");  
r.create();  
//9.写入字符串值 
RegistryKey r = new RegistryKey(RootKey.HKEY_CURRENT_USER, "Software\\BEQ Technologies"); 
RegistryValue v = new RegistryValue("myVal", ValueType.REG_SZ, "data"); 
r.setValue(v); 
//6.获取DWORD值 
RegistryKey r = new RegistryKey(RootKey.HKEY_CURRENT_USER, "Software\\BEQ Technologies");  
  
if(r.hasValue("myValue")) {  
    RegistryValue v = r.getValue("myValue");  
    v.setType(ValueType.REG_DWORD); 
} // if

53.选择文件夹对话框
/* 
import java.io.*; 
import javax.swing.*; 
*/ 
JFileChooser chooser = new JFileChooser(); 
chooser.setCurrentDirectory(new File(".")); 
chooser.setFileFilter(
    new javax.swing.filechooser.FileFilter() { 
        public boolean accept(File f) { 
            return f.getName().toLowerCase().endsWith(".gif") || f.isDirectory(); 
        } 
        public String getDescription() { 
            return "GIF Images"; 
        } 
    }
); 
int r = chooser.showOpenDialog(null); 
if (r == JFileChooser.APPROVE_OPTION) { 
    String name = chooser.getSelectedFile().getPath(); 
 // label.setIcon(new ImageIcon(name)); 
}

54.删除空文件夹
//import java.io.*; 
File f = new File(%%1); 
if (isFolerNull(f)) {  
    for (File file :f.listFiles()) {  
        if (file.list().length == 0) {  
            System.out.println(file.getPath());  
            file.delete();  
        } 
    } 
}

55.发送数据到剪贴板
 
//import java.awt.*; 
//import java.awt.datatransfer.*; 
Clipboard clipboard = Toolkit.getDefaultToolkit().getSystemClipboard();
Transferable tText = new StringSelection(%%1); 
clipboard.setContents(tText, null);

56.从剪贴板中取数据
//import java.awt.*; 
//import java.awt.datatransfer.*; 
// 取得系统剪贴板里可传输的数据构造的Java对象  
Transferable t = Toolkit.getDefaultToolkit().getSystemClipboard().getContents(null);  
try {  
    if (t != null && t.isDataFlavorSupported(DataFlavor.stringFlavor)) {  
        // 因为原系的剪贴板里有多种信息, 如文字, 图片, 文件等  
        // 先判断开始取得的可传输的数据是不是文字, 如果是, 取得这些文字  
        String s = (String) t.getTransferData(DataFlavor.stringFlavor);  
        // 同样, 因为Transferable中的DataFlavor是多种类型的,  
        // 所以传入DataFlavor这个参数, 指定要取得哪种类型的Data.  
        System.out.println(s);  
    }  
} catch (UnsupportedFlavorException ex) {  
    ex.printStackTrace();  
} catch (IOException ex) {  
    ex.printStackTrace();  
}

57.获取文件路径的父路径
String %%2 = %%1.substring(0, %%1.lastIndexOf("\\"));

58.创建快捷方式
//import java.io.*;  
try { 
    PrintWriter pw = new PrintWriter(new FileOutputStream("C:/a.bat"));  
    pw.println(%%1);"C:/a.txt" 
    pw.close();  
} catch (IOException e) { 
    e.printStackTrace(); 
}

59.弹出快捷菜单
//MouseEvent e 
JPopupMenu jpm = new JPopupMenu(); 
show(jpm,x,y);

60.文件夹复制到整合操作
/* 
import java.io.*; 
import java.util.*; 
import javax.swing.*; 
*/ 
JFileChooser Jfc = new JFileChooser("请选择源路径"); // 建立选择档案对话方块盒 Jfc 
if (!Jfc.isFileSelectionEnabled()) { 
    return; 
} 
String %%1 = Jfc.getSelectedFile().getParent(); 
Jfc = new JFileChooser("请选择目标路径"); // 建立选择档案对话方块盒 Jfc
if (!Jfc.isFileSelectionEnabled()) { 
    return; 
} 
String %%2 = Jfc.getSelectedFile().getParent(); 
LinkedList<String> folderList = new LinkedList<String>(); 
folderList.add(%%1); 
LinkedList<String> folderList2 = new LinkedList<String>(); 
folderList2.add(%%2 + %%1.substring(%%1.lastIndexOf("\\"))); 
while (folderList.size() > 0) { 
    (new File(folderList2.peek())).mkdirs(); // 如果文件夹不存在 则建立新文件夹 
    File folders = new File(folderList.peek()); 
    String[] file = folders.list(); 
    File temp = null; 
    try { 
        for (int i = 0; i < file.length; i++) { 
            if (folderList.peek().endsWith(File.separator)) { 
                temp = new File(folderList.peek() + File.separator + file[i]); 
            } else { 
                temp = new File(folderList.peek() + File.separator + file[i]); 
            } 
            if (temp.isFile()) { 
                FileInputStream input = new FileInputStream(temp); 
                FileOutputStream output = new FileOutputStream( 
                                                  folderList2.peek() 
                                                + File.separator 
                                                + (temp.getName()).toString()); 
                byte[] b = new byte[5120]; 
                int len; 
                while ((len = input.read(b)) != -1) { 
                    output.write(b, 0, len); 
                } 
                output.flush(); 
                output.close(); 
                input.close(); 
            } 
            if (temp.isDirectory()) { // 如果是子文件夹 
                for (File f : temp.listFiles()) { 
                    if (f.isDirectory()) { 
                        folderList.add(f.getPath()); 
                        folderList2.add(folderList2.peek() + File.separator + f.getName()); 
                    } 
                } 
            } 
        }//for 
    } catch (Exception e) { 
        //System.out.println("复制整个文件夹内容操作出错"); 
        e.printStackTrace(); 
    } 
    folderList.removeFirst(); 
    folderList2.removeFirst(); 
}while

61.文件夹移动到整合操作
/* 
import java.io.*; 
import java.util.*; 
import javax.swing.*; 
*/ 
JFileChooser Jfc = new JFileChooser("请选择源路径"); // 建立选择档案对话方块盒 Jfc 
if (!Jfc.isFileSelectionEnabled()) { 
    return; 
} 
String %%1 = Jfc.getSelectedFile().getParent(); 
Jfc = new JFileChooser("请选择目标路径"); // 建立选择档案对话方块盒 Jfc
if (!Jfc.isFileSelectionEnabled()) { 
    return; 
} 
String %%2 = Jfc.getSelectedFile().getParent();

62.目录下所有文件夹复制到整合操作
 
/* 
import java.io.*; 
import java.util.*; 
import javax.swing.*; 
*/ 
JFileChooser Jfc = new JFileChooser("请选择源路径"); // 建立选择档案对话方块盒 Jfc 
if (!Jfc.isFileSelectionEnabled()) { 
    return; 
} 
String %%1 = Jfc.getSelectedFile().getParent(); 
Jfc = new JFileChooser("请选择目标路径"); // 建立选择档案对话方块盒 Jfc
if (!Jfc.isFileSelectionEnabled()) { 
    return; 
} 
String %%2 = Jfc.getSelectedFile().getParent();


63.目录下所有文件夹移动到整合操作
/* 
import java.io.*; 
import java.util.*; 
import javax.swing.*; 
*/ 
JFileChooser Jfc = new JFileChooser("请选择源路径"); // 建立选择档案对话方块盒 Jfc 
if (!Jfc.isFileSelectionEnabled()) { 
    return; 
} 
String %%1 = Jfc.getSelectedFile().getParent(); 
Jfc = new JFileChooser("请选择目标路径"); // 建立选择档案对话方块盒 Jfc
if (!Jfc.isFileSelectionEnabled()) { 
    return; 
} 
String %%2 = Jfc.getSelectedFile().getParent(); 

64.目录下所有文件复制到整合操作
/* 
import java.io.*; 
import java.util.*; 
import javax.swing.*; 
*/ 
JFileChooser Jfc = new JFileChooser("请选择源路径"); // 建立选择档案对话方块盒 Jfc 
if (!Jfc.isFileSelectionEnabled()) { 
    return; 
} 
String %%1 = Jfc.getSelectedFile().getParent(); 
Jfc = new JFileChooser("请选择目标路径"); // 建立选择档案对话方块盒 Jfc
if (!Jfc.isFileSelectionEnabled()) { 
    return; 
} 
String %%2 = Jfc.getSelectedFile().getParent();

65.目录下所有文件移动到整合操作
/* 
import java.io.*; 
import java.util.*; 
import javax.swing.*; 
*/ 
JFileChooser Jfc = new JFileChooser("请选择源路径"); // 建立选择档案对话方块盒 Jfc 
if (!Jfc.isFileSelectionEnabled()) { 
    return; 
} 
String %%1 = Jfc.getSelectedFile().getParent(); 
Jfc = new JFileChooser("请选择目标路径"); // 建立选择档案对话方块盒 Jfc
if (!Jfc.isFileSelectionEnabled()) { 
    return; 
} 
String %%2 = Jfc.getSelectedFile().getParent();

66.对目标压缩文件解压缩到指定文件夹
/* 
import java.io.*; 
import java.util.*; 
import javax.swing.*; 
*/ 

67.创建目录副本整合操作
/* 
import java.io.*; 
import java.util.*; 
import javax.swing.*; 
*/ 
JFileChooser Jfc = new JFileChooser("请选择源路径"); // 建立选择档案对话方块盒 Jfc 
if (!Jfc.isFileSelectionEnabled()) { 
    return; 
} 
String %%1 = Jfc.getSelectedFile().getParent(); 
Jfc = new JFileChooser("请选择目标路径"); // 建立选择档案对话方块盒 Jfc
if (!Jfc.isFileSelectionEnabled()) { 
    return; 
} 
String %%2 = Jfc.getSelectedFile().getParent();

68.打开网页
//import java.io.*; 
try {  
    String command = "C:\\Program Files\\Internet Explorer\\Iexplore.exe " +%%1; 
    Runtime.getRuntime().exec(command); 
} catch (IOException ex) { 
    ex.printStackTrace(); 
}

69.删除空文件夹整合操作
/* 
import java.io.*; 
import java.util.*; 
import javax.swing.*; 
*/
String ret = ""; 
if (fileNameTmp.endsWith("txt")) { 
    ret = "text/plain"; 
} 
if (fileNameTmp.endsWith("gif")) { 
    ret = "image/gif"; 
} 
if (fileNameTmp.endsWith("jpg")) { 
    ret = "image/jpeg"; 
} 
if (fileNameTmp.endsWith("jpeg")) { 
    ret = "image/jpeg"; 
} 
if (fileNameTmp.endsWith("jpe")) { 
    ret = "image/jpeg"; 
} 
if (fileNameTmp.endsWith("zip")) { 
    ret = "application/zip"; 
} 
if (fileNameTmp.endsWith("rar")) { 
    ret = "application/rar"; 
} 
if (fileNameTmp.endsWith("doc")) { 
    ret = "application/msword"; 
} 
if (fileNameTmp.endsWith("ppt")) { 
    ret = "application/vnd.ms-powerpoint"; 
} 
if (fileNameTmp.endsWith("xls")) { 
    ret = "application/vnd.ms-excel"; 
} 
if (fileNameTmp.endsWith("html")) { 
    ret = "text/html"; 
} 
if (fileNameTmp.endsWith("htm")) { 
    ret = "text/html"; 
} 
if (fileNameTmp.endsWith("tif")) { 
    ret = "image/tiff"; 
} 
if (fileNameTmp.endsWith("tiff")) { 
    ret = "image/tiff"; 
} 
if (fileNameTmp.endsWith("pdf")) { 
    ret = "application/pdf"; 
} 
return ret; 

76.删除文件夹下的所有文件且不删除文件夹下的文件夹
//import java.io.*; 
//import java.util.*; 
LinkedList<String> folderList = new LinkedList<String>(); 
folderList.add(%%1); 
while (folderList.size() > 0) { 
    File file = new File(folderList.peek()); 
    folderList.removeLast(); 
    File[] files = file.listFiles(); 
    ArrayList<File> fileList = new ArrayList<File>(); 
    for (int i = 0; i < files.length; i++) { 
        if (files[i].isDirectory()) { 
            folderList.add(files[i].getPath()); 
        } else { 
            fileList.add(files[i]); 
        } 
    } 
    for (File f : fileList) { 
        f.delete(); 
    } 
}

转载自http://tieba.baidu.com/f?kz=585908932
分享到:
评论

相关推荐

    java文件操作大全

    如何在Java中操作文件呢?转载供大家欣赏

    java文件路径操作详细(转载)

    Java文件路径操作是Java开发中常见且重要的任务,无论是在读写文件、处理资源还是进行系统交互时,都需要对文件路径进行操作。本篇将详细探讨Java中的文件路径处理技术,主要涵盖以下知识点: 1. **File类**: ...

    JAVA数据库连接大全-转载

    这篇博客"JAVA数据库连接大全-转载"可能详细介绍了在Java中如何管理和使用数据库连接,包括使用JDBC API,数据库连接池以及相关的工具。这里我们将深入探讨JDBC、数据库连接池的重要性和配置方法。 1. **JDBC基础**...

    Java字节码(.class文件)格式详解((转载)

    每个Java类都由一个`.class`文件表示,其中包含了编译后的字节码指令。`.class`文件的结构非常严谨,它不仅包含了类的信息,如类名、方法、变量等,还包含了运行时必要的元数据。 一、`.class`文件结构 1. 文件头:...

    java多线程扫描器(转载)

    ### Java多线程扫描器:实现对任意主机端口的扫描 #### 一、系统功能与设计要点 **1.1 设计任务与要求** Java多线程扫描器的开发旨在深化对Java面向对象程序设计的理解,特别是巩固Java语言的语法规范。此项目的...

    2008十大优秀Java应用程序(转载)

    ThinkFree使用Java编写,因此可以在多个操作系统上运行,同时提供在线版本,支持协作和多种文件格式处理。 这些Java应用程序的多样性表明,无论是在嵌入式系统、3D图形、Web开发、多媒体处理还是办公应用,Java都能...

    转载-Java语言入门教程

    这个教程假设读者对编程没有预先的知识,但需要有一定的计算机操作基础,例如文件管理。此外,教程特别指出,无论年龄大小,只要有学习的愿望,都能从Java编程中受益。 首先,计算机程序是由一系列指令组成的,这些...

    java语言整合API接口自动化测试框架

    MyFileUtils.java ##文件的操作类 Out.java ##重新封装了System.out.println()方法,打印当前的时间 TaskModel.java ##创建本次API测试的任务 TestApi.java ##执行测试 TimeUtils.java ##操作时间的...

    java 时间转换(转载)

    在提供的`Test.java`文件中,可能包含了对上述知识点的实际应用代码。通过阅读和理解这段代码,你可以更深入地了解Java中的时间转换操作。不过,由于实际代码没有给出,我们只能基于一般情况来讨论这些概念。在实际...

    深入分析 Java I/O 的工作机制(转载)

    内存映射文件(Memory-Mapped File)将文件映射到虚拟内存,使得文件操作如同访问内存一样快速。 10. **字符集编码** Java I/O系统广泛涉及字符编码,如ASCII、UTF-8、GBK等。Charset类提供了字符集的相关操作,...

    JAVA计算机管理系统

    4. j-jdbc - 这个文件名暗示了与Java JDBC(Java Database Connectivity)有关,JDBC是Java访问数据库的标准接口,用于连接和操作数据库,可能是数据库驱动配置文件,或者包含了数据库操作的示例代码。 综合以上...

    MANIFEST.MF 文件内容详解(转)

    这篇博文可能是从其他来源转载的,用于解释这个关键文件的结构和用途。 在Java开发中,MANIFEST.MF文件是每个JAR文件必须包含的文本文件,它定义了程序的主要属性,如主类(Main-Class),版本信息,依赖库等。以下...

    java+Web审批流程.rar

    在【压缩包子文件的文件名称列表】中提到的"java+Web审批流程(转载)"可能是项目的源代码文件、文档或者部署指南。这些文件可能包含以下部分: 1. **源代码**:包括Java源文件(.java),可能分布在不同的包结构下...

    my1(java基础+页面设计)

    3. "MyEclipse 7.0快捷键大全[转载].txt" - 提供MyEclipse 7.0的快捷键列表,有助于提高开发效率。 4. "第七章打包测试使用.txt" - 可能是关于软件打包和测试的章节,涵盖如何将项目打包成可执行文件和进行测试的...

    java编程事项(转载收集整理版)

    6. **输入/输出(I/O)**:Java的I/O流系统包括字符流和字节流,以及用于文件操作、网络通信和对象序列化的API。学会使用BufferedReader、FileWriter等类进行文件操作,是开发中常见的需求。 7. **网络编程**:Java...

    Java利用Preferences设置个人偏好,转载自:燕窝

    因为Preferences API是基于文件系统的,所以同一台机器上的不同Java进程可以共享相同的数据,这在多组件应用中非常有用。 5. **备份与恢复**: 用户可以通过导出和导入Preferences来备份和恢复他们的设置。可以...

    java开发html转pdf示例(转载)

    2. `iText-2.0.8.jar`:iText是一个强大的PDF处理库,主要用于创建、修改和操作PDF文档。在这里,我们主要利用它来构建PDF文档结构。 在Eclipse开发环境下,你需要将这两个库添加到项目的类路径中。你可以通过以下...

    JACOB jar 下载 ,方便java 操作office 软件

    com一般表现为dll或exe等二进制文件,像我们呆会会用到的jacob.dll文件这里说说为什么我们用java去操纵office(如:word)要使用com,而不直接 使用java去做? 首先,我们清楚office是建立在windows平台之上的,本身是...

Global site tag (gtag.js) - Google Analytics