Question

In: Computer Science

Java Question here. Need to write a program that will check ANY operating system and find...

Java Question here. Need to write a program that will check ANY operating system and find out OS name and then write that info to a file in the data directory.

here is where I am so far:

    public void writeOSName() {
        
        // TODO write the name of the operating system running this code to a file
        //  in the data directory called os.txt
        
        // The file has to be written in the data directory of this project
        // Use System Properties to get the operating system name.
        // Remember this exact same code needs to work on a Mac/Linux and Windows computer without any modifications.
        
        // Handle any exceptions in this method. Do not declare that this method throws any exceptions.
        
        // If possible, test your code on two types of operating systems: Windows, and Mac/Linux.
        String osSystem = System.getProperty("os.name");
        if (osSystem.contains("Windows" )) {
           File filePath = new File("mydirectory", "os.txt");

        } else {

        }
        String version = System.getProperty("os.version");
//        System.out.println(osSystem);
//        System.out.println(version);
        try (BufferedWriter bw = new BufferedWriter(new FileWriter("os.txt"))) {
            bw.write(System.getProperty("os.name", "\n"));
            //bw.write(System.getProperty("os.version", "\n"));

        } catch (IOException e) {
            System.out.println("Error: " + e);
        }
    }
    
}

Solutions

Expert Solution

Short Summary:

Implemented the code to find OS name and write to a file

Attached source code and output

**************Please do upvote to appreciate our time. Thank you!******************

Source Code:

import java.io.BufferedWriter;
import java.io.File;
import java.io.FileWriter;
import java.io.IOException;

//This class finds the OS name and writes it to a file named OSName.txt
public class OSName {
   //Declare and assign osSystem variable
   static String osSystem = System.getProperty("os.name");

   //This method writes the OS name to the file
   public static void writeOSName() {

       /** TODO write the name of the operating system running this code to a file
in the data directory called os.txt

The file has to be written in the data directory of this project
Use System Properties to get the operating system name.
Remember this exact same code needs to work on a Mac/Linux and Windows computer without any modifications.

Handle any exceptions in this method. Do not declare that this method throws any exceptions.

If possible, test your code on two types of operating systems: Windows, and Mac/Linux. **/

       //File name and path, as required
       File file = new File("C:\\Users\\asus\\OSName.txt");

       try {
           //Initialize a buffered writer
           BufferedWriter bw = new BufferedWriter(new FileWriter(file));

           bw.write(osSystem);
           //Close writer
           bw.close();

       } catch (IOException e) {
           System.out.println("IO Error: " + e);
       }
       catch (Exception e) {
           System.out.println("Error: " + e);
       }


   }
   //Check if it's windows
   public static boolean isWindows() {

       return (osSystem.toLowerCase().indexOf("win") >= 0);

   }
   //Check if it's MAC

   public static boolean isMac() {

       return (osSystem.indexOf("mac") >= 0);

   }
   //Check if it's UNIX

   public static boolean isUnix() {

       return (osSystem.indexOf("nix") >= 0 || osSystem.indexOf("nux") >= 0 || osSystem.indexOf("aix") > 0 );

   }
   //Check if it's Solaris

   public static boolean isSolaris() {

       return (osSystem.indexOf("sunos") >= 0);

   }
   //Main method to test the above method
   public static void main(String args[])
   {
       //Write into the file based on the OS
       if(isWindows())
       {
           System.out.println("The windows OS name '"+osSystem+"' is written to the file OSName.txt");
           writeOSName();
       }
       if(isMac())
       {
           System.out.println("The MAC OS name '"+osSystem+"' is written to the file OSName.txt");
           writeOSName();
       }
       if(isUnix())
       {
           System.out.println("The UNIX OS name '"+osSystem+"' is written to the file OSName.txt");
           writeOSName();
       }
   }

}

Code Screenshot:

Output:

OSName.txt


**************Please do upvote to appreciate our time. Thank you!******************


Related Solutions

Write a program IN JAVA that asks the user for a number. The program should check...
Write a program IN JAVA that asks the user for a number. The program should check the number to ensure that it is valid (if not, the user should enter a valid number to continue.) The program should print out all of the prime numbers from 2 up to the number, with up to 10 numbers per line. (Recall: A prime number is a number that is only divisible by itself and 1.) The code should ask the user if...
2. Answer the following question (a) Write a Java program to find the number of integers...
2. Answer the following question (a) Write a Java program to find the number of integers within the range of two specified numbers and that are divisible by another number. For example, x = 5, y=20 and p =3, find the number of integers within the range [x, y] and that are divisible by p. (b) Write explicitly on the following OOP concepts: i. Encapsulation ii. Inheritance iii. Polymorphism (c) Develop a Java application that computes the two roots of...
Write a program in JAVA using the BigInteger library that can be used to check a...
Write a program in JAVA using the BigInteger library that can be used to check a RSA signature, based on the signer's RSA public key pair. To test your program, take the following information about a message Alice signed and use the verify signature to reproduce the message Alice signed and convert it back to String format. n = 68236588817658935156357212288430888402056854883696767622850112840388111129987 e = 65537 signature = 46612763171375975923246342580942010388414761162366281695045830390867474569531
(JAVA) We will write a program to check the spelling of the word entered by user,...
(JAVA) We will write a program to check the spelling of the word entered by user, using data from a dictionary, which is text file. The program will ask user to enter a word for spell check, and then check in the text file (dictionary.txt) if the word exists. (The dictionary.txt file is provided) If the word exists in text file, the output will be “Word is correctly spelled”. If the word doesn’t exist in the text file, program will...
2. Write a Java program to read a string (a password)from the user and then   check...
2. Write a Java program to read a string (a password)from the user and then   check that the password conforms to the corporate password policy.   The policy is:   1) the password must be at least 8 characters   2) the password must contain at least two upper case letters   3) the password must contain at least one digit   4) the password cannot begin with a digit   Use a for loop to step through the string.   Output “Password OK” if the password...
What we want the program to do: We need to write a program, in Java, that...
What we want the program to do: We need to write a program, in Java, that will let the pilot issue commands to the aircraft to get it down safely on the flight deck. The program starts by prompting (asking) the user to enter the (start) approach speed in knots. A knot is a nautical mile and is the unit used in the navy and by the navy pilots. After the user enters the approach speed, the user is then...
•Write a JAVA program to check a given password strength from a user's input. •Create a...
•Write a JAVA program to check a given password strength from a user's input. •Create a method to check the number of characters. It must be more than 8. •Create a method to check the password to have at least one uppercase letter. •Create a method to check the password to have at least one lowercase letter. •Create a method to check the password to have at least one digit. •Create a method to check the password to have at...
•Write a JAVA program to check a given password strength from a user's input. •Create a...
•Write a JAVA program to check a given password strength from a user's input. •Create a method to check the number of characters. It must be more than 8. •Create a method to check the password to have at least one uppercase letter. •Create a method to check the password to have at least one lowercase letter. •Create a method to check the password to have at least one digit. •Create a method to check the password to have at...
Java Write a program to record the GPAs of a class and find the percentage of...
Java Write a program to record the GPAs of a class and find the percentage of students in each GPA. The program first allows the user to enter the number of students enrolled in the class, and then to enter the GPA of all students one by one. For each student, the input must be between 1 and 4 inclusively. Otherwise, the software displays a message as “Invalid number!” and asks for a new GPA for the same student Enter...
Java question- Write a java program to process the number.txt file. Then count the numbers and...
Java question- Write a java program to process the number.txt file. Then count the numbers and calculate the total average, even numbers average, odd number average, then print the corresponding information. The result should be displayed in the following format there are XX numebers in the file there are xx even numbers there are xx odd numbers the total number average is xx the odd number average is xx the even number average is xx I am having trouble using...
ADVERTISEMENT
ADVERTISEMENT
ADVERTISEMENT