دوره‌ای که می‌تونه مسیر شغلیت رو عوض کنه! دوره‌ای که می‌تونه مسیر شغلیت رو عوض کنه!
🎯 ثبت نام

آموزش Java – کار با کلاس Reader در Java

آموزش Java – کار با کلاس Reader در Java

کلاس Reader یک کلاس abstract است که برای خواندن دنباله ای از کاراکترها/character stream بکار می رود. کلاس هایی که از این کلاس ارث بری دارند فقط باید دو متد read(char[], int, int) و close() را پیاده سازی می کنند. با این حال اغلب کلاس های مشتق که از Reader ارث بری می کنند، متدهای آن را جهت افزایش کارایی و افزودن به قابلیت های آن، در سطح خود بازنویسی (override) می نمایند.

برخی از کلاس هایی که از این کلاس abstract ارث بری دارند عبارتند از: BufferedReader، CharArrayReader، FilterReader، InputStreamReader، PipedReader و StringReader.

فیلدهای کلاس

Modifier & Type
تنظیم کننده ی سطح دسترسی و نوع داده ای
فیلد
شرح
protected Object
lock
آبجکتی که بر روی stream قفل اعمال کرده و امکان دسترسی به منبع مورد نظر و انجام عملیات مختلف بر روی آن را مدیریت می کند.

توابع سازنده (Constructor)

تنظیم کننده ی سطح دسترسی/Modifier
تابع سازنده (constructor)
شرح
protected
Reader()
یک آبجکت reader ایجاد می کند که وظیفه ی درج دنباله ای از کاراترها را برعهده داشته و برای مدیریت دسترسی به بخش های بحرانی، بر اساس خود reader قفل اعمال می کند و دسترسی به منبع را مدیریت می نماید.
protected
Reader(Object lock)
یک آبجکت reader ایجاد می کند که وظیفه ی درج دنباله ای از کاراکترها را برعهده داشته و برای مدیریت دسترسی به منبع و انجام عملیات همزمان بر روی بخش های بحرانی آن، از آبجکت ارسال شده به عنوان آرگومان به عنوان قفل استفاده می کند.

متدها


Modifier & Type
مدیریت کننده ی سطح دسترسی و نوع خروجی
متد
شرح
abstract void
close()
Stream را بسته و تمامی منابع سیستمی تخصیص یافته به آن را آزاد می سازد.
void
mark(int readAheadLimit)
موقعیت جاری در stream و محل خواندن داده ها را نشانه گذاری می کند.
boolean
markSupported()
این متد مشخص می کند آیا این stream از عملیات mark() پشتیبانی می کند یا خیر.
int
read()
یک تک کاراکتر را از منبع ورودی می خواند.
int
read(char[] cbuf)
تعدادی کاراکتر را از ورودی خوانده و در آرایه char[] cbuf ذخیره می کند.
abstract int
read(char[] cbuf, int off, int len)
تعدادی کاراکتر را بر اساس آرگومان های ورودی off (نقطه ی شروع خواندن) و len (طول آرایه و تعداد کاراکترها) خوانده و در آرایه ی char[] درج می نماید.
int
read(CharBuffer target)
سعی می کند تعدادی کاراکتر را از ورودی خوانده و در character buffer مورد نظر درج کند.
boolean
ready()
بررسی می کند آیا این stream محتوای خود را برای خواندن در اختیار قرار داده و آماده برای خواندن می باشد یا خیر.
void
reset()
Stream را به آخرین محل فراخوانی متد mark() که خواندن و ذخیره ی داده ها از آنجا آغاز شده برگردانده و داده ها را مجددا می خواند.
long
skip(long n)
به تعداد مشخص شده در قالب آرگومان n کاراکتر از stream را نادیده گرفته و نمی خواند.

مثال کاربردی

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
import java.io.*; 
public class ReaderExample { 
public static void main(String[] args) { 
try
Reader reader = new FileReader("file.txt"); 
int data = reader.read(); 
while (data != -1) { 
System.out.print((char) data); 
data = reader.read(); 
reader.close(); 
} catch (Exception ex) { 
System.out.println(ex.getMessage()); 
<button></button>

file.txt:

1
I love my country<button></button>

خروجی:

1
I love my country<button></button>
1396/08/23 3082 2183
رمز عبور : tahlildadeh.com یا www.tahlildadeh.com
نظرات شما

نظرات خود را ثبت کنید...