PrintWriter write(char[], int, int) in Java

write(char[], int, int): This method is available in the java.io.PrintWriter class of Java.

Syntax:

void java.io.PrintWriter.write(char[] buf, int off, int len)

This method takes three arguments. This method writes A Portion of an array of characters.

Parameters: Three parameters are required for this method.

buf: Array of characters.

off: Offset from which to start writing characters.

len: Number of characters to write.

Returns: NA

Throws:

1. IndexOutOfBoundsException - If the values of the off and len parameters cause the corresponding method of the underlying Writer to throw an IndexOutOfBoundsException.

2. NullPointerException- if cbuf is null.

Approach 1: When no exception

Java

import java.io.File;
import java.io.FileNotFoundException;
import java.io.PrintWriter;

public class PrintWriterwrite4 {
    public static void main(String[] args) throws FileNotFoundException {
        File file = new File("D:\\hello.txt");
        PrintWriter printWriter = new PrintWriter(file);

        char cbuf[] = { 'a', 'b', 'c', 'd', 'e' };
        int off = 0, len = 3;
        printWriter.write(cbuf, off, len);

        System.out.println("Successfully writes");
        printWriter.close();
    }
}

Output:

Successfully writes


Approach 2: IndexOutOfBoundsException 

Java

package com.PrintWriter;

import java.io.File;
import java.io.FileNotFoundException;
import java.io.PrintWriter;

public class PrintWriterwrite4 {
    public static void main(String[] args)
throws FileNotFoundException {
        File file = new File("D:\\hello.txt");
        PrintWriter printWriter = new PrintWriter(file);

        char cbuf[] = { 'a', 'b', 'c', 'd', 'e' };
        int off = 0, len = 13;
        printWriter.write(cbuf, off, len);

        System.out.println("Successfully writes");
        printWriter.close();
    }
}

Output:

Exception in thread "main" java.lang.IndexOutOfBoundsException at java.base/java.io.BufferedWriter.write(BufferedWriter.java:174) at java.base/java.io.PrintWriter.write(PrintWriter.java:507) at com.PrintWriter.PrintWriterwrite4.main(PrintWriterwrite4.java:14)


Approach 3: NullPointerException

Java

package com.PrintWriter;

import java.io.File;
import java.io.FileNotFoundException;
import java.io.PrintWriter;

public class PrintWriterwrite4 {
    public static void main(String[] args)
throws FileNotFoundException {
        File file = new File("D:\\hello.txt");
        PrintWriter printWriter = new PrintWriter(file);

        char cbuf[] = null;
        int off = 0, len = 3;
        printWriter.write(cbuf, off, len);

        System.out.println("Successfully writes");
        printWriter.close();
    }
}

Output:

Exception in thread "main" java.lang.NullPointerException: Cannot read the array length because "cbuf" is null at java.base/java.io.BufferedWriter.write(BufferedWriter.java:172) at java.base/java.io.PrintWriter.write(PrintWriter.java:507) at com.PrintWriter.PrintWriterwrite4.main(PrintWriterwrite4.java:14)


Some other methods of PrintWriter

append(char): This method appends the specified character to this writer.

append(CharSequence): This method appends the specified character sequence to this writer.

append(CharSequence, int, int): This method appends a subsequence of the specified character sequence to this writer.

checkError(): This method flushes the stream if it's not closed and checks its error state.

close(): This method closes the stream and releases any system resources associated with it.

flush(): This method flushes the stream.

format(String, Object...): This method writes a formatted string to this writer using the specified format string and arguments.

format(Locale, String, Object...): This method writes a formatted string to this writer using the specified format string and arguments.

print(boolean): This method prints a boolean value.

printf(String, Object...): It is a convenient method to write a formatted string to this writer using the specified format string and arguments.

printf(Locale, String, Object...): It is a convenient method to write a formatted string to this writer using the specified format string and arguments.

println(): This method terminates the current line by writing the line separator string. 

PrintWriter(File): This method creates a new PrintWriter, without automatic line flushing, with the specified file.

PrintWriter(Writer, boolean): This method creates a new PrintWriter.

PrintWriter(OutputStream, boolean, Charset): This method creates a new PrintWriter from an existing OutputStream.

PrintWriter(OutputStream): This method creates a new PrintWriter, without automatic line flushing, from an existing OutputStream.

PrintWriter(String): This method creates a new PrintWriter, without automatic line flushing, with the specified file name.

PrintWriter(Writer): This method creates a new PrintWriter, without automatic line flushing.

PrintWriter(File, Charset): This method creates a new PrintWriter, without automatic line flushing, with the specified file and charset.

PrintWriter(File, String): This method creates a new PrintWriter, without automatic line flushing, with the specified file and charset.

PrintWriter(OutputStream, boolean): This method creates a new PrintWriter from an existing OutputStream.

PrintWriter(String, Charset): This method creates a new PrintWriter, without automatic line flushing, with the specified file name and charset.

PrintWriter(String, String): This method creates a new PrintWriter, without automatic line flushing, with the specified file name and charset.

write(char[]): This method writes an array of characters.

write(int): This method writes a single character.

write(String): This method writes a string

write(char[], int, int): This method writes A Portion of an array of characters.

write(String, int, int): This method writes a portion of a string.

No comments:

Post a Comment