У овом упутству ћемо научити о класи Јава ПринтСтреам и њеним методама принт () и принтф () уз помоћ примера.
PrintStream
Класа у java.io
пакету може да се користи за писање излазних података у заједнички читљивом облику (текст) уместо бајтова.
Проширује апстрактну класу OutputStream
.
Рад ПринтСтреама
За разлику од осталих излазних токова, PrintStream
претвара примитивне податке (цели број, знак) у текстуални формат уместо у бајтове. Затим записује те форматиране податке у излазни ток.
Такође, PrintStream
класа не доводи до изузетака улаз / излаз. Уместо тога, треба да користимо checkError()
методу да бисмо пронашли било какву грешку у њему.
Напомена : PrintStream
Класа такође има функцију аутоматског испирања. То значи да приморава излазни ток да упише све податке на одредиште под једним од следећих услова:
- ако
је у току штампања написан знак новог реда
- ако се
println()
метода позива - ако је низ бајтова записан у току штампања
Направите ПринтСтреам
Да бисмо креирали PrintStream
, прво морамо да увозимо java.io.PrintStream
пакет. Једном када увозимо пакет, ево како можемо створити ток штампе.
1. Коришћење других излазних токова
// Creates a FileOutputStream FileOutputStream file = new FileOutputStream(String file); // Creates a PrintStream PrintStream output = new PrintStream(file, autoFlush);
Ево,
- створили смо ток штампе који ће форматирати податке у датотеку коју представља
FileOutputStream
- аутоФлусх је опционални логички параметар који одређује да ли треба извршити аутоматско испирање или не
2. Коришћење имена датотеке
// Creates a PrintStream PrintStream output = new PrintStream(String file, boolean autoFlush);
Ево,
- створили смо ток штампе који ће форматирати податке у наведену датотеку
- аутоФлусх је опционални логички параметар који одређује да ли треба извршити аутоматско прање или не
Напомена : У оба случаја PrintStream
упишите податке у датотеку користећи неко подразумевано кодирање знакова. Међутим, можемо одредити и кодирање знакова ( УТФ8 или УТФ16 ).
// Creates a PrintStream using some character encoding PrintStream output = new PrintStream(String file, boolean autoFlush, Charset cs);
Овде смо Charset
класу користили за одређивање кодирања знакова. Да бисте сазнали више, посетите Јава Цхарсет (званична Јава документација).
Методе ПринтСтреам-а
PrintStream
Класа обезбеђује различите методе које нам омогућавају да одштампате податке на излаз.
принт () Метода
print()
- штампа наведене податке у излазни токprintln()
- штампа податке у излазни ток заједно са новим знаком линије на крају
Пример: метода принт () са системском класом
class Main ( public static void main(String() args) ( String data = "Hello World."; System.out.print(data); ) )
Оутпут
Здраво Свете.
У горњем примеру нисмо креирали ток штампања. Међутим, можемо користити print()
метод PrintStream
часа.
Можда се питате како је то могуће. Па, да објасним шта се овде догађа.
Обратите пажњу на линију,
System.out.print(data);
Ево,
System
је завршна класа која је одговорна за извођење стандардне операције уноса / излазаout
је променљива класеPrintStream
типа декларисане уSystem
класи
Сад пошто out
је PrintStream
типа, можемо га користити за позивање свих метода PrintStream
класе.
Пример: метода принт () са класом ПринтСтреам
import java.io.PrintStream; class Main ( public static void main(String() args) ( String data = "This is a text inside the file."; try ( PrintStream output = new PrintStream("output.txt"); output.print(data); output.close(); ) catch(Exception e) ( e.getStackTrace(); ) ) )
У горњем примеру смо креирали ток исписа под називом оутпут. Ток исписа повезан је са излазном.ткт датотеком.
PrintStream output = new PrintStream("output.txt");
За штампање података у датотеку користили смо print()
методу.
Овде, када покренемо програм, датотека оутпут.ткт се пуни следећим садржајем.
This is a text inside the file.
метода принтф ()
printf()
Метод може да се користи за штампање форматирани стринг. Садржи 2 параметра: форматирани низ и аргументе. На пример,
printf("I am %d years old", 25);
Ево,
- Имам% д година је форматирани низ
- % д је целобројни податак у форматираном низу
- 25 је аргумент
Форматирани низ укључује и текст и податке. А, аргументи замењују податке унутар форматираног низа.
Отуда је % д замењен са 25 .
Пример: метода принтф () која користи ПринтСтреам
import java.io.PrintStream; class Main ( public static void main(String() args) ( try ( PrintStream output = new PrintStream("output.txt"); int age = 25; output.printf("I am %d years old.", age); output.close(); ) catch(Exception e) ( e.getStackTrace(); ) ) )
У горњем примеру смо креирали ток исписа под називом оутпут. Ток исписа повезан је са датотеком оутпут.ткт .
PrintStream output = new PrintStream("output.txt");
За штампање форматираног текста у датотеку користили смо printf()
методу.
Овде, када покренемо програм, датотека оутпут.ткт се пуни следећим садржајем.
I am 25 years old.
Остале методе ПринтСтреама
Методе | Описи |
---|---|
close() | затвара ток штампања |
checkError() | проверава да ли постоји грешка у току и враћа логички резултат |
append() | додаје наведене податке у ток |
Да бисте сазнали више, посетите Јава ПринтСтреам (званична Јава документација).