Computer >> कंप्यूटर ट्यूटोरियल >  >> प्रोग्रामिंग >> Java

Java प्रोग्राम: फ़ाइल के सभी वर्णों को '#' से बदलें सिवाय एक विशेष शब्द के

आवश्यकता: एक फ़ाइल पढ़ें, सभी वर्णों को # से बदलें सिवाय एक विशिष्ट शब्द (उदाहरण: "Tutorialspoint") के।

दृष्टिकोण

  1. फ़ाइल सामग्री को स्ट्रिंग में पढ़ें
  2. शब्दों में विभाजित करें (split(" "))
  3. प्रत्येक शब्द के लिए: यदि लक्ष्य शब्द से मेल खाता है → जैसा है रखें; अन्यथा प्रत्येक वर्ण को # से बदलें
  4. परिणाम जोड़ें

उदाहरण

import java.io.File;
import java.io.FileNotFoundException;
import java.util.Arrays;
import java.util.Scanner;

public class ReplaceExceptWord {
    public static String fileToString() throws FileNotFoundException {
        Scanner sc = new Scanner(new File("D://input.txt"));
        StringBuilder sb = new StringBuilder();
        while (sc.hasNextLine()) sb.append(sc.nextLine());
        return sb.toString();
    }

    public static void main(String args[]) throws FileNotFoundException {
        String contents = fileToString();
        System.out.println("Original:\n" + contents);

        String[] words = contents.split(" ");
        String target = "Tutorialspoint";
        StringBuilder result = new StringBuilder();

        for (String word : words) {
            if (word.equals(target)) {
                result.append(word).append(" ");
            } else {
                result.append(word.replaceAll(".", "#")).append(" ");
            }
        }
        System.out.println("Result:\n" + result.toString().trim());
    }
}

आउटपुट

Original:
Hello how are you welcome to Tutorialspoint we provide hundreds of technical tutorials for free.
Result:
####################### Tutorialspoint ############################################

सुधार

  • split("\\s+") का उपयोग करें ताकि एकाधिक स्पेस/न्यूलाइन संभाल सकें।
  • विराम चिह्न संरक्षण के लिए, रेगेक्स \\b शब्द सीमाओं के साथ उपयोग करें।
  • बड़ी फ़ाइलों के लिए स्ट्रीमिंग प्रोसेसिंग पर विचार करें।
  1. Java प्रोग्राम: डायरेक्टरी में सभी फ़ाइलों को रिकर्सिवली डिलीट करें (केवल फ़ाइलें) Java प्रोग्राम: डायरेक्टरी में सभी फ़ाइलों को रिकर्सिवली डिलीट करें (केवल फ़ाइलें)

    मान लें हमारे पास D डायरेक्टरी में ExampleDirectory नाम का एक फोल्डर है जिसमें 7 फाइलें और 2 डायरेक्टरीज़ हैं: जहां, SampleDirectory1 में दो फाइलें हैं: SampleFile1.txt और SampleFile2.txt। SampleDirectory2 में दो फाइलें हैं: SampleFile2.txt और SampleFile3.txt। उदाहरण निम्नलिखित Java उदाहरण Exa

  1. - पायथन प्रोग्राम - दिए गए कैरेक्टर को छोड़कर सूची के सभी कैरेक्टर्स बदलें

    जब दिए गए कैरेक्टर को छोड़कर सूची के सभी कैरेक्टर्स बदलने हों, तो लिस्ट कॉम्प्रिहेंशन और == ऑपरेटर का उपयोग किया जाता है। उदाहरण नीचे इसका प्रदर्शन दिया गया है: my_list = [P, Y, T, H, O, N, P, H, P] print(सूची है:) print(my_list) replace_char = $ retain_char = P my_result = [element if element ==

  1. - पायथन प्रोग्राम: स्ट्रिंग में 'a' के सभी ऑकरेंस को $ से रिप्लेस करना

    जब स्ट्रिंग में a के सभी ऑकरेंस को $ जैसे कैरेक्टर से रिप्लेस करना होता है, तो स्ट्रिंग पर इटरेट किया जा सकता है और += ऑपरेटर का उपयोग करके रिप्लेस किया जा सकता है। उदाहरण my_str = Jane Will Rob Harry Fanch Dave Nancy changed_str = for char in range(0, len(my_str)): if(my_str[char] == a):