1. 编写程序,查找指定目录下的某种类型的文件
2. 打开文本文件output.txt,往文本末尾写入www2.fjau.edu.cn
import java.io.*;
public class Main{
public static void main(String args[]) throws Exception {
String source = "www2.fjau.edu.cn";
byte b[] = source.getBytes();
OutputStream ops2 = new FileOutputStream("output.txt");
ops2.write(b);
ops2.close();
}
}
2. 打开文本文件output.txt,往文本末尾写入www2.fjau.edu.cn
import java.io.*;
public class Main{
public static void main(String args[]) throws Exception {
String source = "www2.fjau.edu.cn";
byte b[] = source.getBytes();
OutputStream ops2 = new FileOutputStream("output.txt");
ops2.write(b);
ops2.close();
}
}
public class stu{
public static void main(String args[]) throws Exception {
String source = "www2.fjau.edu.cn";
FileWriter writer = new FileWriter("stu.txt", true);
writer.write(source);
writer.close();
}
}
第二我做好了,第一怎么编呢
<%@ page contentType="text/html;charset=gb2312"%>
<%@ page import="java.io.*"%>
<html>
<head>
<title>取出目录中文件的方法--列出目录中的文件</title>
</head>
<body>
<%
String path=request.getRealPath("/");
File d=new File(path);//建立当前目录中文件的File对象
File list[]=d.listFiles();//取得代表目录中所有文件的File对象数组
out.println("<font color=#ff0000>" + path + "目录下的文件:</font><br>");
for(int i=0;i<list.length;i++){
if(list<I>.isFile()){
out.println(list<I>.getName() + "<br>");
}
}
out.println("<br><font color=#ff0000>" + path + "目录下的目录:</font><br>");
for(int i=0;i<list.length;i++){
if(list<I>.isDirectory()){
out.println(list<I>.getName() + "<br>");
}
}
%>
</body>
</html>
public class stu{
public static void main(String args[]){
String path="c://";
File d=new File(path);//建立当前目录中文件的File对象
File list[]=d.listFiles();//取得代表目录中所有文件的File对象数组
System.out.println("+ path + 目录下的文件: ");
for(int i=0;i<list.length;i++){
if(list[i].isFile()){
System.out.println(list[i].getName() + " ");
}
}
System.out.println(" " + path + "目录下的目录: ");
for(int i=0;i <list.length;i++){
if(list[i].isDirectory()){
System.out.println(list[i].getName() + " ");
}
}
}
}楼上了代码行啊,不过没有“指定某种类型的文件 ”
//package book.io;
//import java.io.File;
//import java.io.FilenameFilter;
public class stu{ static class MyFilenameFilter implements FilenameFilter{
private String suffix = "*.doc";
public MyFilenameFilter(String surfix){
this.suffix = surfix;
}
public boolean accept(File dir, String name) {
//如果文件名以surfix指定的后缀相同,便返回true,否则返回false
if (new File(dir, name).isFile()){
return name.endsWith(suffix);
}else{
//如果是文件夹,则直接返回true
return true;
}
}
}
/**
* 列出目录下所有文件包括子目录的文件路径
* @param dirName 文件夹的文件路径
*/
public static void listAllFiles(String dirName){
//如果dir不以文件分隔符结尾,自动添加文件分隔符。
if (!dirName.endsWith(File.separator)){
dirName = dirName + File.separator;
}
File dirFile = new File(dirName);
//如果dir对应的文件不存在,或者不是一个文件夹,则退出
if (!dirFile.exists() || (!dirFile.isDirectory())){
System.out.println("List失败!找不到目录:" + dirName);
return;
}
//列出源文件夹下所有文件(包括子目录)
File[] files = dirFile.listFiles();
for (int i = 0; i < files.length; i++){
if (files[i].isFile()){
System.out.println(files[i].getAbsolutePath() + " 是文件!");
}else if (files[i].isDirectory()){
System.out.println(files[i].getAbsolutePath() + " 是目录!");
ListFileUtil.listAllFiles(files[i].getAbsolutePath());
}
}
}
/**
* 列出目录中通过文件名过滤器过滤后的文件。
* @param filter 文件名过滤器对象
* @param dirName 目录名
*/
public static void listFilesByFilenameFilter(FilenameFilter filter, String dirName){
//如果dir不以文件分隔符结尾,自动添加文件分隔符。
if (!dirName.endsWith(File.separator)){
dirName = dirName + File.separator;
}
File dirFile = new File(dirName);
//如果dir对应的文件不存在,或者不是一个文件夹,则退出
if (!dirFile.exists() || (!dirFile.isDirectory())){
System.out.println("List失败!找不到目录:" + dirName);
return;
}
//列出源文件夹下所有文件(包括子目录)
File[] files = dirFile.listFiles(filter);
for (int i = 0; i < files.length; i++){
if (files[i].isFile()){
System.out.println(files[i].getAbsolutePath() + " 是文件!");
}else if (files[i].isDirectory()){
System.out.println(files[i].getAbsolutePath() + " 是目录!");
ListFileUtil.listFilesByFilenameFilter(filter, files[i].getAbsolutePath());
}
}
} public static void main(String[] args) {
String dir = "C:/temp";
// System.out.println((dir + "目录下的内容: "));
// ListFileUtil.listAllFiles(dir);
//
// System.out.println();
// System.out.println("经过过滤器过滤后的内容:");
// //新建一个文件名过滤器。参数为".txt"
// FilenameFilter myFilenameFilter = new ListFileUtil.MyFilenameFilter(".txt");
// ListFileUtil.listFilesByFilenameFilter(myFilenameFilter, dir);
//
String[] t = new File(dir).list();
for (int i=0; i<t.length; i++){
System.out.println(t[i]);
}
}
}
大家帮我改成短一点了
FileOutputStream(String name, boolean append) ;同时设置append为true,不然向文件中写入是会覆盖以前的东西,这样的话就会在文件末尾添加你要添加的东西。
问问楼主,你第一个程序里的ListFileUtil这个类是你自己定义的?但是没有看见这个类的文件啊!!
JDK好象没有这个类吧?getAbsolutePath() 只是显示路径并没有显示文件哈,为什么不用getName()呢?ListFileUtil.listAllFiles(files[i].getAbsolutePath()); 这个会有错吧...
找到该文件夹下所有符合条件的文件import java.io.*;
class stu {
/**
* 列出目录下所有文件包括子目录的文件路径
*
* @param dirName
* 文件夹的文件路径
* @param dirName
* 后缀
*
*/
public static void listAllFiles(String dirName, String suffix) { File dirFile = new File(dirName);
// 如果dir对应的文件不存在,或者不是一个文件夹,则退出
if (!dirFile.exists() || (!dirFile.isDirectory())) {
System.out.println("没有目录:" + dirName);
return;
}
// 列出源文件夹下所有文件(包括子目录)
File[] files = dirFile.listFiles();
for (int i = 0; i < files.length; i++) {
if (files[i].isFile()) {
if (files[i].getAbsolutePath().endsWith(suffix))
System.out.println(files[i].getAbsolutePath() + " 是"
+ suffix + "文件!");
} else if (files[i].isDirectory()) {
// 如果是目录则递归
listAllFiles(files[i].getAbsolutePath(), suffix);
}
}
} public static void main(String[] args) {
listAllFiles("c:\\test", ".txt");
}
}