日期:2014-05-20  浏览次数:20720 次

关于java输入输出的简单代码
package je3.io;
import java.io.*;
public class Delete
{
public static void main(String[] args){
if (args.length != 1)
{
System.err.println("Usage: java Delete <file or directory>");
System.exit(0);
}
try
{
delete(args[0]);
}
catch (IllegalArgumentException e)
{
System.err.println(e.getMessage());
}
}
public static void delete(String filename){
File f = new File(filename);
if (!f.exists())
{
fail("Delete: no such file or directory:" + filename);
}
if (!f.canWrite())
{
fail("Delete: write protected:"+ filename);
}
if (f.isDirectory())
{
String[] files = f.list();
if (files.length> 0)
{
fail("Delete: directory not empty:"+ filename);
}

}
boolean success = f.delete();
if (!success)
{
fail("Delete: deletion failed");
}
}
protected static void fail(String msg) throws IllegalArgumentException{
throw new IllegalArgumentException(msg);
}


}
谁能帮我讲一下这几行代码?这是我书上找的,是一个删除文件的程序,那么文件名在哪里改呢?还有核心的代码是哪些呀??谢谢啦~

------解决方案--------------------
引用:
本人菜鸟,一下这个问题误喷啊~
编译通过后运行 java Delete 删除的文件名。
函数中并没有输入输出流,为什么在“删除文件名”的位置写文件名程序会知道并删除该文件呢?麻烦给出具体代码啊,谢谢~
还有“删除文件名”的文件是不是必须与程序放在同一个盘的同一个文件夹中呢?

运行程序并不是只有一种,就是你想的那种,直接运行就OK的,
有的是需要运行的时候附带参数的,这个参数就是你所要输入的那个文件名。
如果是Eclipse的话:
右键点主类名 --》运行--》打开运行对话框--》Main(主类)--》右边Arguments(参数) 点他以后然后在下面Program arguments(程序参数里面):里面输入你要加的参数就可以   参数之间用空格隔开   输完以后点确定