java基础:12.8 综合练习

java

 

1、复制文件是常见的IO操作,设计如下方法,实现复制源文件srcFile到目标文件destFile

public static void copyFile(String srcFile, String destFile){

}

	/**

* 复制文件

* @param srcFile 原文件/地址

* @param destFile 复制后的文件/地址

*/

public static void copyFile(String srcFile, String destFile){

File f = new File(srcFile);

File fout = new File(destFile);

if(fout.canExecute())

fout.delete();

try(FileInputStream fis = new FileInputStream(f);

FileOutputStream fos = new FileOutputStream(fout))

{

byte[] all = new byte[(int)f.length()];

fis.read(all);

fos.write(all);

}

catch (IOException e) {

// TODO Auto-generated catch block

e.printStackTrace();

}

}

 

 

2、复制文件夹,实现如下方法,把源文件夹下所有的文件 复制到目标文件夹下(包括子文件夹)

public static void copyFolder(String srcFolder, String destFolder){

}

    /**

* 拷贝文件夹

* @param srcFolder 要拷贝的文件夹

* @param destFolder 目的地文件夹

*/

public static void copyFolder(String srcFolder, String destFolder){

File file = new File(srcFolder);

try {

for(File x:file.listFiles()) {

if(x.isFile()) {

new File(destFolder + "\\" + x.getName()).getParentFile().mkdirs();

copyFile(x.getAbsolutePath(),destFolder+"\\"+x.getName());

}

if(x.isDirectory()) {

new File(destFolder + "\\" + x.getName()).getParentFile().mkdirs();

copyFolder(x.getAbsolutePath(), destFolder + "\\" + x.getName());

}

}

}

catch (Exception e) {

e.printStackTrace();

}

}

 

 

3、假设你的项目目录是 e:/project,遍历这个目录下所有的java文件(包括子文件夹),找出文件内容包括main的那些文件,并打印出来。

public static void search(File folder, String search);

/**

* 在搜索文件夹搜索指定内容

* @param folder 指定搜索的文件夹

* @param search 搜索关键字

*/

public static void search(File folder, String search) {

if(folder.exists()) {

File[] file = folder.listFiles();

try {

for(File listfile : file) {

if(listfile.isFile()) {

FileReader fr = new FileReader(listfile);

int len = 0;

char[] ch = new char[1024];

while((len=fr.read(ch))!= -1) {

String str = String.valueOf(ch);

if(str.contains(search))

System.out.println("找到子目标字符串"+search+",在文件:"+listfile.getAbsolutePath());

}

fr.close();

}

else

search(listfile,search);

}

}

catch (Exception e) {

e.printStackTrace();

}

}

else

System.out.println("文件错误。");

}

以上是 java基础:12.8 综合练习 的全部内容, 来源链接: utcz.com/z/391251.html

回到顶部