Класс Java.io.Writer в Java
Этот абстрактный класс для записи в символьные потоки. Единственные методы, которые должен реализовывать подкласс, - это write (char [], int, int), flush () и close (). Однако большинство подклассов переопределят некоторые из методов, определенных здесь, чтобы обеспечить более высокую эффективность, дополнительную функциональность или и то, и другое.
Конструктор
- protected Writer (): Создает новую запись потока символов, критические секции которой будут синхронизироваться на самом модуле записи.
- protected Writer (Блокировка объекта): Создает новую запись потока символов, критические секции которой будут синхронизироваться с данным объектом.
Методы:
- Writer append (char c): добавляет указанный символ к этому писателю. Вызов этого метода формы out.append (c) ведет себя точно так же, как и вызов
out.write (c)Синтаксис: public Writer append (char c) выбрасывает IOException Параметры: c - 16-битный символ для добавления Возврат: Этот писатель Броски: IOException - Writer append (CharSequence csq): добавляет указанную последовательность символов к этому писателю. Вызов этого метода формы out.append (csq) ведет себя точно так же, как и вызов
out.write (csq.toString ())
В зависимости от спецификации toString для символьной последовательности csq, вся последовательность не может быть добавлена. Например, вызов метода toString символьного буфера вернет подпоследовательность, содержимое которой зависит от позиции и ограничения буфера.Синтаксис: public Writer append (CharSequence csq) выбрасывает IOException Параметры: csq - добавляемая последовательность символов. Если csq имеет значение null, затем к этому писателю добавляются четыре символа «ноль». Возврат: Этот писатель Броски: IOException - Writer append (CharSequence csq, int start, int end): добавляет подпоследовательность указанной последовательности символов к этому записывающему устройству. Добавляет подпоследовательность указанной последовательности символов к этому модулю записи.
Синтаксис: public Writer append (CharSequence csq, int start, намереваться) выбрасывает IOException Параметры: csq - последовательность символов, из которой будет добавлена подпоследовательность. Если csq имеет значение null, символы будут добавлены как если csq содержит четыре символа «ноль». start - индекс первого символа в подпоследовательности end - Индекс символа, следующего за последним символом в подпоследовательности Возврат: Этот писатель Броски: IndexOutOfBoundsException IOException - abstract void close (): закрывает поток, сначала очищая его. После закрытия потока дальнейшие вызовы write () или flush () вызовут выброс исключения IOException. Закрытие ранее закрытого потока не имеет никакого эффекта.
Синтаксис: public abstract void close () выбрасывает IOException Броски: IOException - abstract void flush (): очищает поток. Если поток сохранил в буфере какие-либо символы из различных методов write (), немедленно запишите их по назначению. Затем, если этот пункт назначения - другой символ или поток байтов, очистите его. Таким образом, один вызов flush () очистит все буферы в цепочке Writers и OutputStreams.
Синтаксис: public abstract void flush () выбрасывает IOException Броски: IOException - void write (char [] cbuf): записывает массив символов.
Синтаксис: public void write (char [] cbuf) выбрасывает IOException Параметры: cbuf - массив символов для записи Броски: IOException - Если возникает ошибка ввода-вывода - abstract void write (char [] cbuf, int off, int len): записывает часть массива символов.
Синтаксис: public abstract void write (char [] cbuf, int off, int len) выбрасывает IOException Параметры: cbuf - Массив символов off - Смещение, с которого нужно начинать писать символы len - Количество символов для записи Броски: IOException - void write (int c): записывает один символ. Записываемый символ содержится в 16 младших битах заданного целочисленного значения; 16 старших битов игнорируются.
Подклассы, которые намереваются поддерживать эффективный односимвольный вывод, должны переопределить этот метод.Синтаксис: public void write (int c) выбрасывает IOException Параметры: c - int, определяющий символ для записи Броски: IOException - void write (String str): записывает строку.
Синтаксис: public void write (String str) выбрасывает IOException Параметры: str - строка для записи Броски: IOException - void write (String str, int off, int len): записывает часть строки.
Синтаксис: public void write (String str, int off, int len) выбрасывает IOException Параметры: str - Строка off - Смещение, с которого нужно начинать писать символы len - Количество символов для записи Броски: IndexOutOfBoundsException
Program :
//Java program demonstrating Writer methods import java.io.IOException;import java.io.PrintWriter;import java.io.Writer;class WriterDemo{ public static void main(String[] args) throws IOException { Writer wr=new PrintWriter(System.out); char c[] = {"B","C","D","E","F"}; CharSequence cs = "JKL"; String str = "GHI"; //illustrating write(int c) wr.write(65); //flushing the stream wr.flush(); //illustrating write(char[] c,int off,int len) wr.write(c); wr.flush(); //illustrating write(String str,int off,int len) wr.write(str); wr.flush(); //illustrating append(Charsequence cs,int start,int end) wr.append(cs); wr.flush(); //illustrating append(int ch) wr.append("M"); wr.flush(); //closing the stream wr.close(); }} |
Выход :
ABCDEFGHIJKLM
Автор статьи - Нишант Шарма . Если вам нравится GeeksforGeeks, и вы хотели бы внести свой вклад, вы также можете написать статью с помощью provide.geeksforgeeks.org или отправить ее по электронной почте на deposit@geeksforgeeks.org. Посмотрите, как ваша статья появляется на главной странице GeeksforGeeks, и помогите другим гикам.
Пожалуйста, напишите комментарии, если вы обнаружите что-то неправильное, или вы хотите поделиться дополнительной информацией по теме, обсужденной выше.
Вниманию читателя! Не переставай учиться сейчас. Ознакомьтесь со всеми важными концепциями Java Foundation и коллекций с помощью курса "Основы Java и Java Collections" по доступной для студентов цене и будьте готовы к работе в отрасли. Чтобы завершить подготовку от изучения языка к DS Algo и многому другому, см. Полный курс подготовки к собеседованию .