ফাইল এবং ডিরেক্টরি তৈরি, মুছা, এবং পরিচালনা করা

File Class এর ব্যবহার - জাভা টাপল (Java Tuples) - Java Technologies

330

Java এর java.io এবং java.nio.file প্যাকেজ ব্যবহার করে ফাইল এবং ডিরেক্টরি তৈরি, মুছা এবং পরিচালনা করা যায়। নিচে বিভিন্ন পদ্ধতির উদাহরণ এবং প্রাসঙ্গিক কোড প্রদান করা হয়েছে।


ফাইল এবং ডিরেক্টরি তৈরি করার পদ্ধতি

১. java.io.File প্যাকেজ ব্যবহার করে

কোড উদাহরণ:
import java.io.File;
import java.io.IOException;

public class FileCreateExample {
    public static void main(String[] args) {
        try {
            // ফাইল তৈরি
            File file = new File("example.txt");
            if (file.createNewFile()) {
                System.out.println("File created: " + file.getName());
            } else {
                System.out.println("File already exists.");
            }

            // ডিরেক্টরি তৈরি
            File directory = new File("exampleDir");
            if (directory.mkdir()) {
                System.out.println("Directory created: " + directory.getName());
            } else {
                System.out.println("Directory already exists.");
            }
        } catch (IOException e) {
            System.out.println("An error occurred.");
            e.printStackTrace();
        }
    }
}

আউটপুট:

File created: example.txt
Directory created: exampleDir

২. java.nio.file প্যাকেজ ব্যবহার করে

কোড উদাহরণ:
import java.nio.file.*;

public class FileNioCreateExample {
    public static void main(String[] args) {
        try {
            // ফাইল তৈরি
            Path filePath = Files.createFile(Paths.get("nio_example.txt"));
            System.out.println("File created: " + filePath);

            // ডিরেক্টরি তৈরি
            Path dirPath = Files.createDirectory(Paths.get("nio_exampleDir"));
            System.out.println("Directory created: " + dirPath);
        } catch (FileAlreadyExistsException e) {
            System.out.println("File or Directory already exists.");
        } catch (IOException e) {
            System.out.println("An error occurred.");
            e.printStackTrace();
        }
    }
}

ফাইল এবং ডিরেক্টরি মুছে ফেলার পদ্ধতি

১. java.io.File ব্যবহার করে ফাইল মুছা

কোড উদাহরণ:
import java.io.File;

public class FileDeleteExample {
    public static void main(String[] args) {
        // ফাইল মুছা
        File file = new File("example.txt");
        if (file.delete()) {
            System.out.println("Deleted the file: " + file.getName());
        } else {
            System.out.println("Failed to delete the file.");
        }

        // ডিরেক্টরি মুছা
        File directory = new File("exampleDir");
        if (directory.delete()) {
            System.out.println("Deleted the directory: " + directory.getName());
        } else {
            System.out.println("Failed to delete the directory. Ensure it's empty.");
        }
    }
}

২. java.nio.file ব্যবহার করে ফাইল মুছা

কোড উদাহরণ:
import java.nio.file.*;

public class FileNioDeleteExample {
    public static void main(String[] args) {
        try {
            // ফাইল মুছা
            Path filePath = Paths.get("nio_example.txt");
            Files.delete(filePath);
            System.out.println("File deleted: " + filePath);

            // ডিরেক্টরি মুছা
            Path dirPath = Paths.get("nio_exampleDir");
            Files.delete(dirPath);
            System.out.println("Directory deleted: " + dirPath);
        } catch (NoSuchFileException e) {
            System.out.println("File or directory does not exist.");
        } catch (DirectoryNotEmptyException e) {
            System.out.println("Directory is not empty.");
        } catch (IOException e) {
            System.out.println("An error occurred.");
            e.printStackTrace();
        }
    }
}

ফাইল এবং ডিরেক্টরি পরিচালনা করার পদ্ধতি

১. ফাইলের বৈশিষ্ট্য পরীক্ষা

কোড উদাহরণ:
import java.io.File;

public class FilePropertiesExample {
    public static void main(String[] args) {
        File file = new File("example.txt");

        if (file.exists()) {
            System.out.println("File exists: " + file.getName());
            System.out.println("Readable: " + file.canRead());
            System.out.println("Writable: " + file.canWrite());
            System.out.println("Absolute Path: " + file.getAbsolutePath());
            System.out.println("File Size: " + file.length() + " bytes");
        } else {
            System.out.println("The file does not exist.");
        }
    }
}

২. ডিরেক্টরির ভেতরে ফাইল তালিকা দেখানো

কোড উদাহরণ:
import java.io.File;

public class DirectoryListExample {
    public static void main(String[] args) {
        File directory = new File("exampleDir");

        if (directory.exists() && directory.isDirectory()) {
            String[] files = directory.list();
            System.out.println("Files in directory:");
            for (String file : files) {
                System.out.println(file);
            }
        } else {
            System.out.println("Directory does not exist.");
        }
    }
}

৩. ফাইল এবং ডিরেক্টরি কপি করা

java.nio.file ব্যবহার করে:
import java.nio.file.*;

public class FileCopyExample {
    public static void main(String[] args) {
        try {
            // ফাইল কপি করা
            Path sourceFile = Paths.get("example.txt");
            Path targetFile = Paths.get("copy_example.txt");
            Files.copy(sourceFile, targetFile, StandardCopyOption.REPLACE_EXISTING);
            System.out.println("File copied to: " + targetFile);

            // ডিরেক্টরি কপি করা (Recursive Copy)
            Path sourceDir = Paths.get("exampleDir");
            Path targetDir = Paths.get("copy_exampleDir");
            Files.walkFileTree(sourceDir, new SimpleFileVisitor<>() {
                @Override
                public FileVisitResult preVisitDirectory(Path dir, BasicFileAttributes attrs) throws IOException {
                    Files.createDirectories(targetDir.resolve(sourceDir.relativize(dir)));
                    return FileVisitResult.CONTINUE;
                }

                @Override
                public FileVisitResult visitFile(Path file, BasicFileAttributes attrs) throws IOException {
                    Files.copy(file, targetDir.resolve(sourceDir.relativize(file)), StandardCopyOption.REPLACE_EXISTING);
                    return FileVisitResult.CONTINUE;
                }
            });
            System.out.println("Directory copied to: " + targetDir);
        } catch (IOException e) {
            System.out.println("An error occurred.");
            e.printStackTrace();
        }
    }
}

ফাইল এবং ডিরেক্টরি ব্যবস্থাপনার Best Practices

  1. Exception Handling নিশ্চিত করুন:
    • প্রতিটি ফাইল/ডিরেক্টরি কার্যক্রমের জন্য উপযুক্ত Exception Handling ব্যবহার করুন।
  2. java.nio.file পছন্দ করুন:
    • এটি java.io এর চেয়ে দ্রুত এবং আরও শক্তিশালী।
  3. Directory Empty Check করুন:
    • ডিরেক্টরি মুছে ফেলার আগে এটি খালি কিনা তা নিশ্চিত করুন।
  4. File Permissions Handle করুন:
    • ফাইল পড়া, লেখা বা সম্পাদনা করার আগে এর অনুমতিগুলো যাচাই করুন।

  • ফাইল তৈরি এবং পরিচালনা: java.io.File সহজ এবং সরাসরি পদ্ধতি প্রদান করে।
  • আধুনিক প্রয়োগের জন্য: java.nio.file ব্যবহার করে উন্নত কার্যক্ষমতা এবং অতিরিক্ত বৈশিষ্ট্য পাওয়া যায়।
  • মেমরি এবং পারফরম্যান্স: বড় ডেটা পরিচালনার সময় Exception Handling এবং Resource Management নিশ্চিত করুন।

সঠিক পদ্ধতি ব্যবহার করে ফাইল এবং ডিরেক্টরি ম্যানেজমেন্ট সিস্টেম আরও কার্যকর এবং নিরাপদ করা সম্ভব।

Content added By
Promotion

Are you sure to start over?

Loading...