【高额奖赏】用java实现文件操作。

编写一个文件系统,通过控制台的输入内容进行文件操作:1-创建文件(即按下1键,则创建文件txt,后面以此类推),2-删除文件,3-复制文件和4-根据输入文件名称,读取文件内容执行对应的指令。当用户输入1时,会读取用户下一行的输入,根据用户的名称和后续输入创建一个文件并将输入录入文件;当用户输入2时,会检索当前目录下的文件,如果文件存在,则删除文件,否则,提示文件不存在;当用户输入3时,则读取用户输入的文件名称并进行复制,并在文件名后加.copy标注;当用户输入4,会查找当前目录下的文件,如果文件存在,则执行文件的内容;当用户输入”exit”并在后续输入“Y”则退出系统。

1、执行代码如下,因不支持插入代码故放图片

2、执行结果


温馨提示:答案为网友推荐,仅供参考
第1个回答  2020-06-10
public class FileSystem {
public static void main(String[] args) throws IOException {
Scanner scanner = new Scanner(System.in);
String inputString = "";
String fileName = "";
System.out.println("请输入操作指令:1.创建文件;2.删除文件;3.复制文件;4.读取文件;exit:退出");
while(scanner.hasNextLine()){
inputString = scanner.nextLine();
if("1".equals(inputString)){
System.out.println("已选择1:创建文件,请输入文件名称");
fileName = scanner.nextLine();
File file = new File(fileName+".txt");
if(!file.exists()){
file.createNewFile();
}
System.out.println("文件【"+fileName+"】创建成功,请输入文件内容,回车键结束输入");
String fileText = scanner.nextLine();
FileOutputStream fileOutputStream = new FileOutputStream(file);
fileOutputStream.write(fileText.getBytes());
fileOutputStream.close();
System.out.println("文件写入成功");
System.out.println("请输入操作指令:1.创建文件;2.删除文件;3.复制文件;4.读取文件;exit:退出");
}else if("2".equals(inputString)){
System.out.println("已选择2:删除文件,请输入要删除文件名称");
fileName = scanner.nextLine();
File file = new File(fileName+".txt");
if(file.exists()){
file.delete();
System.out.println("文件删除成功");
}else{
System.out.println("文件"+fileName+"不存在");
}
System.out.println("请输入操作指令:1.创建文件;2.删除文件;3.复制文件;4.读取文件;exit:退出");
}else if("3".equals(inputString)){
System.out.println("已选择3:复制文件,请输入要复制文件名称");
fileName = scanner.nextLine();
File file = new File(fileName+".txt");
if(file.exists()){
InputStream in = null;
OutputStream out = null;
try {
in = new FileInputStream(new File(fileName+".txt"));
out = new FileOutputStream(new File(fileName+".copy.txt"));

byte[] buffer = new byte[1024];
int len;

while ((len = in.read(buffer)) > 0) {
out.write(buffer, 0, len);
}
} finally {
System.out.println("复制成功");
if(in != null)in.close();
if(out != null)out.close();
}
}else{
System.out.println("文件不存在,无法复制");
}
System.out.println("请输入操作指令:1.创建文件;2.删除文件;3.复制文件;4.读取文件;exit:退出");
}else if("4".equals(inputString)){
System.out.println("已选择4:读取文件");
File file = new File(fileName+".txt");
if(file.exists()){
InputStream in = null;
try {
in = new FileInputStream(file);
int tempbyte;
String str = "";
while ((tempbyte = in.read()) != -1) {
str = str+(char)tempbyte;
}
System.out.println(str);
in.close();
}finally{
if(in != null)in.close();
}
}else{
System.out.println("未找到文件");
}
System.out.println("请输入操作指令:1.创建文件;2.删除文件;3.复制文件;4.读取文件;exit:退出");
}else if("exit".equals(inputString)){
break;
}else{
System.out.println("输入不合法,请重新输入");
System.out.println("请输入操作指令:1.创建文件;2.删除文件;3.复制文件;4.读取文件;exit:退出");
}
}
scanner.close();
System.out.println("文件系统已退出...");
}
}
相似回答