第二十四章——文件管理的代码保存
生活随笔
收集整理的這篇文章主要介紹了
第二十四章——文件管理的代码保存
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
這是關于文件的增刪改查代碼的記錄:
package com.maya.hanqi.filemanager;import java.io.BufferedReader; import java.io.BufferedWriter; import java.io.File; import java.io.FileNotFoundException; import java.io.FileReader; import java.io.FileWriter; import java.io.IOException; import java.util.HashMap; import java.util.Map; import java.util.Scanner;public class TestFileManager {private static Map<String, File> fileMap = new HashMap<String, File>();private static boolean lock = true;public static void main(String[] args) {Scanner scanner = null;while (lock) {showContent();scanner = new Scanner(System.in);System.out.println("1---在選定的目錄下創建文件夾");System.out.println("2---將選定的文件改名");System.out.println("3---將選定的文件刪除");System.out.println("4---將選定的文件復制到另一個路徑");System.out.println("5---退出");String console = scanner.nextLine();if ("1".equals(console)) {System.out.println("想在哪個文件夾下創建 ?");String path = scanner.nextLine();System.out.println("輸入新文件夾的名字...");String folderName = scanner.nextLine();createFolder(path, folderName);}if ("2".equals(console)) {System.out.println("說 ! 改誰 ?");String fname = scanner.nextLine();System.out.println("改成什么 ?");String targetName = scanner.nextLine();renameFile(fname, targetName);}if ("3".equals(console)) {System.out.println("又看誰不順眼了啊 ?");String fname = scanner.nextLine();deleteFile(fname);}if ("4".equals(console)) {System.out.println("復制哪個 ?");String fname = scanner.nextLine();System.out.println("復制到哪里 ?");String targetPath = scanner.nextLine();copyFile(fname, targetPath);}if ("5".equals(console)) {lock = false;System.err.println("系統已經退出 !");}}scanner.close();}public static void showContent() {File file = new File("E:\\java\\folder");System.out.println(file.getName());fileMap.put(file.getName(), file);factFile(file, 1);}public static void copyFile(String fname, String targetPath) {File file = fileMap.get(fname);BufferedReader br = null;BufferedWriter bw = null;String sc = null;if (!(file == null)) {if (fileMap.get(targetPath).isDirectory()) {try {File newFile = new File(fileMap.get(targetPath).getPath() + "\\" + fname);br = new BufferedReader(new FileReader(fileMap.get(fname)));bw = new BufferedWriter(new FileWriter(newFile));while ((sc = br.readLine()) != null) {bw.write(sc);}br.close();bw.close();System.err.println("文件復制成功 !");} catch (FileNotFoundException e) {e.printStackTrace();} catch (IOException e) {e.printStackTrace();}} else {System.err.println("目標路徑不是文件夾, 不能復制 !");return;}} else {System.err.println("輸入的路徑不存在 !");}}public static void deleteFile(String fname) {File file = fileMap.get(fname);if (!(file == null)) {if(file.listFiles().length > 0) {System.err.println("不是空文件夾, 無法刪除 !");return;}file.delete();fileMap.remove(fname);System.err.println("文件已刪除 !");} else {System.err.println("輸入的路徑不存在 !");}}public static void renameFile(String fname, String targetName) {File file = fileMap.get(fname);if (!(file == null)) {File newFile = new File(file.getParentFile().getPath() + "\\" + targetName);file.renameTo(newFile);System.out.println("文件名已經更改 !");} else {System.err.println("輸入的路徑不存在 !");}}public static void createFolder(String address, String folderName) {File file = fileMap.get(address);if (!(file == null)) {File newFile = new File(file.getPath() + "\\" + folderName);if (newFile.mkdirs()) {System.err.println("文件夾成功創建");} else {System.err.println("創建文件夾失敗");}} else {System.err.println("輸入的路徑不存在 !");}}public static void console(int k) {for (int a = 0; a < k; a++) {System.out.print(" ");}}public static void factFile(File file, int length) {if (file.exists() && file.isDirectory()) {File[] fs = file.listFiles();for (int i = 0; i < fs.length; i++) {console(length);System.out.println(fs[i].getName());factFile(fs[i], length + 1);fileMap.put(fs[i].getName(), fs[i]);}}} }?
轉載于:https://www.cnblogs.com/yuanlaihenkuang/p/7008740.html
總結
以上是生活随笔為你收集整理的第二十四章——文件管理的代码保存的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 成功的项目管理
- 下一篇: c++虚函数的前奏--函数指针与回调