জাভা ব্যবহার করে ফাইলগুলির সাথে কোনও ফোল্ডার কীভাবে মুছবেন


104

আমি জাভা ব্যবহার করে একটি ডিরেক্টরি তৈরি করতে এবং মুছতে চাই, তবে এটি কাজ করছে না।

File index = new File("/home/Work/Indexer1");
if (!index.exists()) {
    index.mkdir();
} else {
    index.delete();
    if (!index.exists()) {
        index.mkdir();
    }
}

3
আপনি চেষ্টা যখন কি ঘটেছে?
অবিমরণ কুগাথসন

প্রশ্নটা কি?
অনিকেত ঠাকুর

1
সূচী ফাইল সরানো হয় না।
মিঃ জি


1
দুর্ভাগ্যক্রমে, @ অনিকেটঠাকুর, এই পদ্ধতির প্রতীকী লিঙ্কগুলি অনুসরণ করবে এবং ফাইল এবং ডিরেক্টরিগুলি মুছে ফেলা হবে যা উদ্দেশ্যে করা হয়নি।
হ্যাঙ্ক শুল্টজ

উত্তর:


99

জাভা এতে ডেটা সহ ফোল্ডারগুলি মুছতে সক্ষম নয়। ফোল্ডারটি মোছার আগে আপনাকে সমস্ত ফাইল মুছতে হবে।

এর মতো কিছু ব্যবহার করুন:

String[]entries = index.list();
for(String s: entries){
    File currentFile = new File(index.getPath(),s);
    currentFile.delete();
}

তারপরে আপনার index.delete() অনির্ধারিত ব্যবহার করে ফোল্ডারটি মুছতে সক্ষম হওয়া উচিত !


37
এটি খালি নয় এমন উপ-ডিরেক্টরি মুছে ফেলবে।
ফ্রান্সেসকো মেনজানি

13
আপনার অবশ্যই একটি পুনরাবৃত্ত পদ্ধতি লিখতে হবে বা FileUtils.deleteDirectory@ ফ্রেঞ্চস্কো মেনজানি যেমন বলেছেন তেমন ব্যবহার করতে হবে ।
EN20

4
খুব সতর্ক হও. যদি সূচকটি অন্য ডিরেক্টরিতে প্রতীকী লিঙ্ক হয় তবে আপনি অন্য ডিরেক্টরিটির বিষয়বস্তু মোছা শেষ করবেন। দুর্ভাগ্যক্রমে, আমি এখনও জাভা 6 তে উইন্ডোজটিতে প্রতীকী লিঙ্কগুলি সনাক্ত করার ভাল উপায় খুঁজে পাইনি, যদিও জাভা 7 ফাইল.আইএসব্লিকলিঙ্ক সরবরাহ করে ()।
হ্যাঙ্ক শুল্টজ

1
সমাধান: কোডটির এই অংশটি মোড়ক করুন if (!index.delete()) {...}। তারপরে, সূচকটি যদি একটি প্রতীকী লিঙ্ক হয় তবে এতে লিখিত বিষয়বস্তু রয়েছে তা নির্বিশেষে এটি মুছে ফেলা হবে।
হ্যাঙ্ক শুল্টজ

ডিরেক্টরি পড়ার সময় যদি কোনও I / O ব্যতিক্রম থাকে তবে এটি একটি নালপয়েন্টার এক্সেপশন নিক্ষেপ করবে। কোডটি entriesনাল কিনা তা পরীক্ষা করা উচিত ।
mernst

178

মাত্র একটি ওয়ানলাইনার

import org.apache.commons.io.FileUtils;

FileUtils.deleteDirectory(new File(destination));

ডকুমেন্টেশন এখানে



13
উম ... কোন। এটি একটি বহিরাগত নির্ভরতা সহ এক-লাইনার, যা মনে রাখা গুরুত্বপূর্ণ। বাইরের নির্ভরতা ব্যবহারের একমাত্র সময়টি হ'ল সহজ আপনি যখন কোনও ব্যক্তিগত হোম প্রকল্প করছেন বা আপনার সংস্থা সত্যই মামলা করার সম্ভাবনা সম্পর্কে চিন্তা করে না।
searchengine27

11
@ searchengine27 কিন্তু এটা গ্রন্থাগার বলে মনে হয় এ্যাপাচি কমন্স বয়সী তাই বিরুদ্ধে মামলা দায়ের পেয়ে ঝুঁকি তুচ্ছ হয় whitesourcesoftware.com/whitesource-blog/...
সিমটিম করুন

1
@ সিমটিম আপনি পয়েন্টটি পুরোপুরি অনুপস্থিত। কোনও সংস্থা কখনও ব্যবহারের শর্তাদি এবং শেষ ব্যবহারকারীর চুক্তিগুলি এবং গ্রন্থাগারের সাথে সম্পর্কিত অন্য কোনও আইনী নথিাদি overালাও না করে আইনজীবীদের একটি দল ছাড়া ব্যবহার করার জন্য কোনও গ্রন্থাগারকে অনুমোদন দেবে না। এই আইনজীবিদের কাউকে কাউকে প্রদান করতে হবে ... কখনও কখনও কেউ চায় না যার অর্থ বিকাশকারী এটি ব্যবহার করতে পাবে না। আপনি যে বৃহত্তর সংস্থার জন্য কাজ করছেন, তত বেশি রেড টেপ আপনাকে যেতে হবে।
searchengine27

19
@ সার্চেইনগাইন27 না, আপনি পয়েন্টটি পুরোপুরি মিস করছেন। যে সংস্থায় অ্যাপাচি কমন্স ব্যবহারের অনুমতি দেওয়ার জন্য আইনজীবীদের একটি সেনাবাহিনী প্রয়োজন তা হ'ল পরম প্যাথলজি, এবং আইটি বিশ্বে আদর্শের কাছাকাছি কিছুই নয়। কারওর কাছে এ জাতীয় সমস্যা রয়েছে তা আমি কখনও শুনিনি এবং যদি আপনার এ জাতীয় সমস্যা থাকে তবে আপনার সম্ভবত SO- এর অবরুদ্ধ হওয়ার অ্যাক্সেস রয়েছে যাতে উত্তর যাইহোক আপনার কাছে অ্যাক্সেসযোগ্য না হয়।
9 বিএসডিএক্স 9 আরভিজে 0lo

94

এটি কাজ করে এবং ডিরেক্টরি ডিরেক্টরিটি এড়াতে অক্ষম দেখায়, এমনটি হয় না: পরীক্ষাটি ঠিক তখনই ঘটে listFiles()

void deleteDir(File file) {
    File[] contents = file.listFiles();
    if (contents != null) {
        for (File f : contents) {
            deleteDir(f);
        }
    }
    file.delete();
}

আপডেট করুন, নিম্নলিখিত প্রতীকী লিঙ্কগুলি এড়ানোর জন্য:

void deleteDir(File file) {
    File[] contents = file.listFiles();
    if (contents != null) {
        for (File f : contents) {
            if (! Files.isSymbolicLink(f.toPath())) {
                deleteDir(f);
            }
        }
    }
    file.delete();
}

2
দেখা যাচ্ছে যে এর মধ্যে একটি বাগ রয়েছে। যদি লুপের সময় অন্য কোনও প্রক্রিয়া ফাইলগুলি মুছে দেয় তবে এটি একটি ব্যতিক্রম হতে পারে যা ধরা এবং উপেক্ষা করা উচিত।
জেফ লারম্যান

2
@ 9ilsdx9rvj0lo স্পর্শকাতর হওয়ার পরিবর্তে, আপনি সিমলিংকগুলি পরিচালনা করতে একটি সম্পাদনা সরবরাহ করতে পারেন। ওপি তার পোস্টে প্রতীকী লিঙ্ক সম্পর্কে কিছুই বলেনি । কেবল একটি ডিরেক্টরি তৈরি এবং মুছে ফেলা হচ্ছে। দয়া করে "অনেকগুলি জিনিস অনুপস্থিত" তালিকাভুক্ত করুন। আমাদের সাহায্য করুন।
পেরি টিউ

পুনঃটুইট করুন আমি কেবল উল্লেখ করছি, উত্তরটি আরও ভাল হওয়া সম্পর্কে আপনার মন্তব্যের সাথে আমি সম্পূর্ণরূপে একমত নই কারণ কোনও বাহ্যিক গ্রন্থাগার ব্যবহার হচ্ছে না। এইটা না. লোকেরা অ্যাপাচি কমন্স ব্যবহার করার একটি ভাল কারণ রয়েছে: আপনাকে কোনও একক জিনিস নিজেই প্রোগ্রাম করতে হবে না। সিমলিংকগুলি এমন কিছু জিনিসগুলির উদাহরণ যা আপনি স্ক্র্যাচ থেকে সমস্ত কিছু লিখতে মিস করবেন।
9 ইএসডিএক্স 9 আরভিজে 0lo

2
এটি আরও ভাল / খারাপের বিষয় নয়, তবে উপকারিতা এবং বিপরীতে। বাহ্যিক গ্রন্থাগারের উপর নির্ভর না করা কখনও কখনও একটি উল্লেখযোগ্য সুবিধা। অবশ্যই চেষ্টা-ও-সত্য সফ্টওয়্যার ব্যবহারের একটি উল্লেখযোগ্য উপকার রয়েছে। বিষয়গুলির ভারসাম্য বজায় রাখা এটি বিকাশকারীদের। ইতিমধ্যে উল্লিখিত দু'টি বাদে যদি বাগগুলি থাকে তবে আমরা অবশ্যই সেগুলি সম্পর্কে জানতে চাই।
জেফ লারম্যান 23

31

আমি জাভা 8 এ এই সমাধানটি পছন্দ করি:

  Files.walk(pathToBeDeleted)
    .sorted(Comparator.reverseOrder())
    .map(Path::toFile)
    .forEach(File::delete);

এই সাইট থেকে: http://www.baeldung.com/java-delete-directory


2
মনে রাখবেন যে এটি সম্পূর্ণ তালিকা তৈরি করে, একটি বাছাই করা অনুলিপি তৈরি করে এবং এর পরে সাজানো অনুলিপিটির উপরে পুনরাবৃত্তি করায় এটিতে স্কেলিবিলিটি সমস্যা থাকতে পারে। খারাপ পুরানো দিনগুলিতে যখন স্মৃতি অক্ষম ছিল না, এটি খুব খারাপ ধারণা হবে। এটি সংক্ষিপ্ত তবে মহাকাশ (O (N) বনাম ও (1)) এবং দক্ষতা (ও (এন লগ এন) বনাম ও (এন)) এ ব্যয়। বেশিরভাগ ব্যবহারের ক্ষেত্রে এটি কোনও ব্যাপার নয়।
জেফ লারম্যান 22

আমার উপরের "স্পেস ও (এন) বনাম ও (গভীরতা)" বলা উচিত ছিল, যেখানে ডিরেক্টরি গাছের গভীরতা (পুনরাবৃত্তদের সাথে এই সমাধানটির তুলনা করে depth)
জেফ লারম্যান

1
এটি মার্জিত, কাজ করে এবং বাহ্যিক লাইব্রেরিতে নির্ভর করে না। এটি পছন্দ করেছে
লিও

এতে ফাইল হ্যান্ডেল ফাঁসের সমস্যা নেই? এই উদাহরণটি ফেরত স্ট্রিমটি বন্ধ করে নাFiles.walk() , যা এপিআই ডক্সে সুস্পষ্টভাবে নির্দেশিত। আমি জানি যে আপনি Files.list()উদাহরণস্বরূপ ফিরে আসা স্ট্রিমটি বন্ধ না করলে আপনি হ্যান্ডলগুলি শেষ করতে পারেন এবং প্রোগ্রামটি ক্র্যাশ হয়ে যাবে। যেমন স্ট্যাকওভারফ্লো . com/ q / 36990053/ 421049 এবং স্ট্যাকওভারফ্লো . com / q/ 26997240 / 421049 দেখুন
গ্যারেট উইলসন

24

জেডিকে In এ আপনি ফাইলের একটি গাছ মুছতে Files.walkFileTree()এবং ব্যবহার করতে পারেন Files.deleteIfExists()। (নমুনা: http://fahdshariff.blogspot.ru/2011/08/java-7-deleting-directory-by-walking.html )

জেডিকে In-এর একটি সম্ভাব্য উপায় হ'ল অ্যাপাচি কমন্স থেকে ফাইল ইউটিলস.ডিলেটকুইটলি ব্যবহার করা যা কোনও ফাইল, ডিরেক্টরি বা ফাইল এবং উপ-ডিরেক্টরি সহ একটি ডিরেক্টরি মুছে ফেলবে।


6
এখানে একটি নমুনা দেওয়া হয়েছে: fahdshariff.blogspot.ru/2011/08/…
অ্যান্ড্রে চাশেভ

23

অ্যাপাচি কমন্স-আইও ব্যবহার করে এটি ওয়ান-লাইনার অনুসরণ করছে:

import org.apache.commons.io.FileUtils;

FileUtils.forceDelete(new File(destination));

এটি (সামান্য) তুলনায় আরও পারফরম্যান্ট FileUtils.deleteDirectory


গোষ্ঠী: 'কমন্স-আইও', নাম: 'কমন্স-আইও', সংস্করণ: '২ + +' - দরকারী
মাইক রডেন্ট

10

যেমনটি উল্লেখ করা হয়েছে, জাভা কোনও ফোল্ডার ফাইল মুছতে সক্ষম নয় যা প্রথমে ফাইলগুলি এবং তারপরে ফোল্ডারটি মুছুন।

এটি করার জন্য এখানে একটি সাধারণ উদাহরণ:

import org.apache.commons.io.FileUtils;



// First, remove files from into the folder 
FileUtils.cleanDirectory(folder/path);

// Then, remove the folder
FileUtils.deleteDirectory(folder/path);

বা:

FileUtils.forceDelete(new File(destination));

9

আমার প্রাথমিক পুনরাবৃত্তি সংস্করণ, জেডিকে পুরানো সংস্করণগুলির সাথে কাজ করছে:

public static void deleteFile(File element) {
    if (element.isDirectory()) {
        for (File sub : element.listFiles()) {
            deleteFile(sub);
        }
    }
    element.delete();
}

2
ডিরেক্টরি পড়ার সময় যদি কোনও I / O ব্যতিক্রম থাকে তবে এটি একটি নালপয়েন্টার এক্সেপশন নিক্ষেপ করবে। কোডটি listFiles()কল করার চেয়ে নালার প্রত্যাবর্তন করে কিনা তা পরীক্ষা করা উচিত isDirectory()
mernst

9

এটি এর জন্য সেরা সমাধান Java 7+:

public static void deleteDirectory(String directoryFilePath) throws IOException
{
    Path directory = Paths.get(directoryFilePath);

    if (Files.exists(directory))
    {
        Files.walkFileTree(directory, new SimpleFileVisitor<Path>()
        {
            @Override
            public FileVisitResult visitFile(Path path, BasicFileAttributes basicFileAttributes) throws IOException
            {
                Files.delete(path);
                return FileVisitResult.CONTINUE;
            }

            @Override
            public FileVisitResult postVisitDirectory(Path directory, IOException ioException) throws IOException
            {
                Files.delete(directory);
                return FileVisitResult.CONTINUE;
            }
        });
    }
}

6

পেয়ারা 21+ উদ্ধার। মুছে ফেলার জন্য ডিরেক্টরি থেকে নির্দেশিত কোনও সিমলিংক না থাকলে কেবলমাত্র ব্যবহার করুন।

com.google.common.io.MoreFiles.deleteRecursively(
      file.toPath(),
      RecursiveDeleteOption.ALLOW_INSECURE
) ;

(এই প্রশ্নটি গুগলের দ্বারা সূচিত হয়েছে, সুতরাং অন্যান্য লোকেরা উত্তরটি অন্য উত্তরগুলির সাথে অনর্থক হলেও, উত্তরটি পেলে পেয়ারা খুশি হতে পারে))


4

আমি এই সমাধানটি সবচেয়ে পছন্দ করি। এটি তৃতীয় পক্ষের লাইব্রেরি ব্যবহার করে না, পরিবর্তে এটি জাভা 7 এর NIO2 ব্যবহার করে ।

/**
 * Deletes Folder with all of its content
 *
 * @param folder path to folder which should be deleted
 */
public static void deleteFolderAndItsContent(final Path folder) throws IOException {
    Files.walkFileTree(folder, new SimpleFileVisitor<Path>() {
        @Override
        public FileVisitResult visitFile(Path file, BasicFileAttributes attrs) throws IOException {
            Files.delete(file);
            return FileVisitResult.CONTINUE;
        }

        @Override
        public FileVisitResult postVisitDirectory(Path dir, IOException exc) throws IOException {
            if (exc != null) {
                throw exc;
            }
            Files.delete(dir);
            return FileVisitResult.CONTINUE;
        }
    });
}

3

আরও একটি পছন্দ হ'ল স্প্রিংয়ের org.springframework.util.FileSystemUtilsপ্রাসঙ্গিক পদ্ধতিটি যা পুনরাবৃত্তভাবে ডিরেক্টরিটির সমস্ত সামগ্রী মুছে ফেলবে use

File directoryToDelete = new File(<your_directory_path_to_delete>);
FileSystemUtils.deleteRecursively(directoryToDelete);

যে কাজটি করবে!


2

এই

index.delete();

            if (!index.exists())
               {
                   index.mkdir();
               }

আপনি ফোন করছেন

 if (!index.exists())
                   {
                       index.mkdir();
                   }

পরে

index.delete();

এর অর্থ আপনি মোছার পর আবার ফাইল তৈরি করছেন File.delete () একটি বুলিয়ান value.So ফেরৎ তারপর আপনি চেক করতে না চান তাহলে System.out.println(index.delete());আপনি পেতে trueতারপর এর মানে হল যে ফাইল মুছে ফেলা হয়

File index = new File("/home/Work/Indexer1");
    if (!index.exists())
       {
             index.mkdir();
       }
    else{
            System.out.println(index.delete());//If you get true then file is deleted




            if (!index.exists())
               {
                   index.mkdir();// here you are creating again after deleting the file
               }




        }

নীচে দেওয়া মন্তব্যগুলি থেকে , আপডেট করা উত্তরটি এরকম

File f=new File("full_path");//full path like c:/home/ri
    if(f.exists())
    {
        f.delete();
    }
    else
    {
        try {
            //f.createNewFile();//this will create a file
            f.mkdir();//this create a folder
        } catch (Exception e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }
    }

2

আপনার যদি সাবফোল্ডারগুলি থাকে তবে আপনি সেমরন উত্তরগুলির সাথে ঝামেলা পাবেন। সুতরাং আপনার এমন একটি পদ্ধতি তৈরি করা উচিত যা এটির মতো কাজ করে:

private void deleteTempFile(File tempFile) {
        try
        {
            if(tempFile.isDirectory()){
               File[] entries = tempFile.listFiles();
               for(File currentFile: entries){
                   deleteTempFile(currentFile);
               }
               tempFile.delete();
            }else{
               tempFile.delete();
            }
        getLogger().info("DELETED Temporal File: " + tempFile.getPath());
        }
        catch(Throwable t)
        {
            getLogger().error("Could not DELETE file: " + tempFile.getPath(), t);
        }
    }

2

আপনি FileUtils.deleteDirectory ব্যবহার করতে পারেন । JAVA ফাইল.ডিলেট () সহ খালি নয় এমন ফোল্ডারগুলি মুছতে পারে না ।


1

ডিরেক্টরিতে কেবল ফাইলগুলি মুছে ফেলা যায় না যাতে আপনার প্রথমে ফাইলগুলির পরে ডিরেক্টরিটি মুছতে হবে

public class DeleteFileFolder {

public DeleteFileFolder(String path) {

    File file = new File(path);
    if(file.exists())
    {
        do{
            delete(file);
        }while(file.exists());
    }else
    {
        System.out.println("File or Folder not found : "+path);
    }

}
private void delete(File file)
{
    if(file.isDirectory())
    {
        String fileList[] = file.list();
        if(fileList.length == 0)
        {
            System.out.println("Deleting Directory : "+file.getPath());
            file.delete();
        }else
        {
            int size = fileList.length;
            for(int i = 0 ; i < size ; i++)
            {
                String fileName = fileList[i];
                System.out.println("File path : "+file.getPath()+" and name :"+fileName);
                String fullPath = file.getPath()+"/"+fileName;
                File fileOrFolder = new File(fullPath);
                System.out.println("Full Path :"+fileOrFolder.getPath());
                delete(fileOrFolder);
            }
        }
    }else
    {
        System.out.println("Deleting file : "+file.getPath());
        file.delete();
    }
}

1

সাব ডিরেক্টরি উপস্থিত থাকলে আপনি পুনরাবৃত্ত কল করতে পারেন

import java.io.File;

class DeleteDir {
public static void main(String args[]) {
deleteDirectory(new File(args[0]));
}

static public boolean deleteDirectory(File path) {
if( path.exists() ) {
  File[] files = path.listFiles();
  for(int i=0; i<files.length; i++) {
     if(files[i].isDirectory()) {
       deleteDirectory(files[i]);
     }
     else {
       files[i].delete();
     }
  }
}
return( path.delete() );
}
}


1

জেডিকে ক্লাসে উল্লেখ করা বেশিরভাগ উত্তর (এমনকি সাম্প্রতিক) নির্ভর করে File.delete()তবে এটি ত্রুটিযুক্ত এপিআই হওয়ায় অপারেশনটি নিঃশব্দে ব্যর্থ হতে পারে। পদ্ধতি ডকুমেন্টেশন পদ বলে:
java.io.File.delete()

নোট করুন যে java.nio.file.Filesক্লাসটি যখন কোনও ফাইল মোছা যায় না তখন deleteনিক্ষেপ করার পদ্ধতিটি সংজ্ঞায়িত করে IOException। এটি ত্রুটি প্রতিবেদন করার জন্য এবং একটি ফাইল কেন মুছে ফেলা যায় না তা নির্ণয়ের জন্য দরকারী।

প্রতিস্থাপন হিসাবে, আপনার ত্রুটি বার্তা সহ একটি Files.delete(Path p) নিক্ষেপ পছন্দ করা উচিত IOException

আসল কোড যেমন লেখা যেতে পারে:

Path index = Paths.get("/home/Work/Indexer1");

if (!Files.exists(index)) {
    index = Files.createDirectories(index);
} else {

    Files.walk(index)
         .sorted(Comparator.reverseOrder())  // as the file tree is traversed depth-first and that deleted dirs have to be empty  
         .forEach(t -> {
             try {
                 Files.delete(t);
             } catch (IOException e) {
                 // LOG the exception and potentially stop the processing

             }
         });
    if (!Files.exists(index)) {
        index = Files.createDirectories(index);
    }
}

0

আপনি নিম্নলিখিত হিসাবে চেষ্টা করতে পারেন

  File dir = new File("path");
   if (dir.isDirectory())
   {
         dir.delete();
   }

আপনার ফোল্ডারের ভিতরে যদি সাব ফোল্ডারগুলি থাকে তবে আপনার এগুলি পুনরাবৃত্তভাবে মুছতে হবে।



0
        import org.apache.commons.io.FileUtils;

        List<String> directory =  new ArrayList(); 
        directory.add("test-output"); 
        directory.add("Reports/executions"); 
        directory.add("Reports/index.html"); 
        directory.add("Reports/report.properties"); 
        for(int count = 0 ; count < directory.size() ; count ++)
        {
        String destination = directory.get(count);
        deleteDirectory(destination);
        }





      public void deleteDirectory(String path) {

        File file  = new File(path);
        if(file.isDirectory()){
             System.out.println("Deleting Directory :" + path);
            try {
                FileUtils.deleteDirectory(new File(path)); //deletes the whole folder
            } catch (IOException e) {
                // TODO Auto-generated catch block
                e.printStackTrace();
            }
        }
        else {
        System.out.println("Deleting File :" + path);
            //it is a simple file. Proceed for deletion
            file.delete();
        }

    }

একটি যাদুমন্ত্র মত কাজ করে . ফোল্ডার এবং ফাইল উভয়ের জন্য। সালাম :)


-1

অন্য অংশ থেকে এটি সরান

File index = new File("/home/Work/Indexer1");
if (!index.exists())
{
     index.mkdir();
     System.out.println("Dir Not present. Creating new one!");
}
index.delete();
System.out.println("File deleted successfully");

-1

এর মধ্যে কয়েকটি উত্তর অযথা দীর্ঘ বলে মনে হচ্ছে:

if (directory.exists()) {
    for (File file : directory.listFiles()) {
        file.delete();
    }
    directory.delete();
}

সাব ডিরেক্টরি জন্য কাজ করে।


-3

আপনি এই ফাংশনটি ব্যবহার করতে পারেন

public void delete()    
{   
    File f = new File("E://implementation1/");
    File[] files = f.listFiles();
    for (File file : files) {
        file.delete();
    }
}

এটি সমস্ত বদ্ধ ফাইলের সাথে একটি ডিরেক্টরিতে দুর্দান্ত কাজ করে। খোলা ফাইলগুলির সাথে ডিরেক্টরিতে চেষ্টা করার পরে এটি কাজ করে না। আপনি কি আমাকে ওপেন ফাইল থাকা
সত্ত্বেও

2
এটি খালি নয় এমন উপ-ডিরেক্টরি মুছে ফেলবে।
পাং
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.