PrintWriter append(CharSequence, int, int) in Java

append(CharSequence, int, int): This method is available in the java.io.PrintWriter class of Java.

Syntax:

PrintWriter java.io.PrintWriter.append(CharSequence csq, int start, int end)

This method takes three arguments. This method appends a subsequence of the specified character sequence to this writer.

Parameters: Three parameters are required for this method.

csq: The character sequence from which a subsequence will be appended. If csq is null, then characters will be appended as if csq contained the four characters "null".

start: The index of the first character in the subsequence.

end: The index of the character following the last character in the subsequence.

Returns: This writer.

Throws:

1. IndexOutOfBoundsException - If start or end is negative, the start is greater than the end, or end is greater than csq.length().

Approach 1: When no exception

Java

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

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

        CharSequence csq = new String("Hello Java");
        int start = 0, end = 3;
        printWriter.append(csq, start, end);

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

Output:

Successfully appended


Approach 2: IndexOutOfBoundsException 

Java

package com.PrintWriter;

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

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

        CharSequence csq = new String("Hello Java");
        int start = 0, end = 31;
        printWriter.append(csq, start, end);

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

Output:

Exception in thread "main" java.lang.StringIndexOutOfBoundsException: begin 0, end 31, length 10 at java.base/java.lang.String.checkBoundsBeginEnd(String.java:3734) at java.base/java.lang.String.substring(String.java:1903) at java.base/java.lang.String.subSequence(String.java:1942) at java.base/java.io.PrintWriter.append(PrintWriter.java:1128) at com.PrintWriter.PrintWriterappend3.main(PrintWriterappend3.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