CodeGym /Java Blog /এলোমেলো /উদাহরণ সহ জাভাতে 11টি পার্স() পদ্ধতি
John Squirrels
লেভেল 41
San Francisco

উদাহরণ সহ জাভাতে 11টি পার্স() পদ্ধতি

এলোমেলো দলে প্রকাশিত
এটির সবচেয়ে সাধারণ অর্থে পার্সিং হল কিছু তথ্যের অংশ থেকে প্রয়োজনীয় তথ্য নিষ্কাশন করা, প্রায়শই পাঠ্য ডেটা। জাভাতে পার্স কি? অনেক জাভা ক্লাস আছে যেগুলোতে parse() মেথড আছে। সাধারণত parse() পদ্ধতি ইনপুট হিসাবে কিছু স্ট্রিং গ্রহণ করে, এটি থেকে প্রয়োজনীয় তথ্য "এক্সট্রাক্ট" করে এবং এটিকে কলিং ক্লাসের একটি বস্তুতে রূপান্তর করে। উদাহরণস্বরূপ, এটি একটি স্ট্রিং পেয়েছে এবং এই স্ট্রিংটিতে "লুকিয়ে রাখা" তারিখটি ফিরিয়ে দিয়েছে। এই পোস্টে, আমরা পার্স() এর 10টি দরকারী বৈচিত্রের দিকে নজর দিতে যাচ্ছি ।

0. parseInt()

সবচেয়ে জনপ্রিয় parse() পদ্ধতির একটি থেকে শুরু করা যাক , এটি ঠিক parse() নয় , parseInt() । Java parseInt () পদ্ধতিটি একটি নির্দিষ্ট স্ট্রিং থেকে আদিম ডেটা টাইপ পেতে ব্যবহৃত হয়। অন্য কথায় এটি একটি স্ট্রিংকে একটি সংখ্যায় রূপান্তর করে। parseInt() এর এক বা দুটি আর্গুমেন্ট থাকতে পারে। এখানে parseInt() এর সিনট্যাক্স :

static int parseInt(String s)
static int parseInt(String s, int radix)
যেখানে s হল একটি সাইনড দশমিক মানের প্রতিনিধিত্বকারী স্ট্রিং এবং একটি সাংখ্যিক সিস্টেমের বেস রেডিক্স। মনে রাখবেন যে কোনও ডিফল্ট ভিত্তি মান নেই — আপনাকে 2 এবং 36 এর পরিসরের মধ্যে একটি প্রবেশ করতে হবে। এখানে একটি উদাহরণ দেওয়া হল। ParseInt() দিয়ে কীভাবে পার্স করবেন:

public class ParseInt0 {

       public static void main(String args[]){
           int x = Integer.parseInt("12");
           double c = Double.parseDouble("12");
           int b = Integer.parseInt("100",2);

           System.out.println(Integer.parseInt("12"));
           System.out.println(Double.parseDouble("12"));
           System.out.println(Integer.parseInt("100",2));
           System.out.println(Integer.parseInt("101", 8));
         
       }
   }
আউটপুট হল:
12 12.0 4 65

1. পিরিয়ড পার্স() পদ্ধতি

পিরিয়ড হল একটি জাভা ক্লাস যা "3 বছর, 5 মাস এবং 2 দিন" এর মতো বছর, মাস এবং দিনের পরিপ্রেক্ষিতে সময়ের পরিমাণকে মডেল করে। এটি একটি পাঠ্য থেকে একটি সময়কাল প্রাপ্ত করার জন্য একটি parse() পদ্ধতি আছে। এখানে পিরিয়ড পার্সের সিনট্যাক্স ()

public static Period parse(CharSequence text)
CharSequence হল একটি ইন্টারফেস, স্ট্রিংস দ্বারা বাস্তবায়িত। সুতরাং আপনি পার্স() পদ্ধতিতে একটি পাঠ্য উপাদান হিসাবে স্ট্রিংস ব্যবহার করতে পারেন । নিশ্চিত করুন যে পিরিয়ড ক্লাসের একটি বস্তু ফেরত দেওয়ার জন্য স্ট্রিংটি সঠিক বিন্যাসে হওয়া উচিত। এই বিন্যাসটি হল PnYnMnD । যেখানে Y মানে "বছর", M - "মাস" এর জন্য, D - "দিন" এর জন্য। N হল একটি সংখ্যা যা প্রতিটি পিরিয়ড মানের সাথে সম্পর্কিত।
  • পদ্ধতিটির একটি প্যারামিটার রয়েছে - একটি পাঠ্য মান।
  • Parse() একটি পিরিয়ড মান প্রদান করে যেখানে একটি স্ট্রিংয়ের মান একটি প্যারামিটারে পরিণত হয়।
  • একটি ব্যতিক্রম হিসাবে, পিরিয়ড পার্স() তারিখের সময়পার্সিএক্সেপশনটি ফেরত দিতে পারে যদি স্ট্রিং মান একটি পিরিয়ডের কাঠামোর সাথে মিল না করে।
বাস্তব-বিশ্বের প্রসঙ্গে পিরিয়ড পার্স() ব্যবহার করার একটি উদাহরণ এখানে :

import java.time.Period;
public class ParseDemo1 {

   public static void main(String[] args)
   {
       //Here is the age String in format to  parse
       String age = "P17Y9M5D";

       // Converting strings into period value
       // using parse() method
       Period p = Period.parse(age);
       System.out.println("the age is: ");
       System.out.println(p.getYears() + " Years\n"
                          + p.getMonths() + " Months\n"
                          + p.getDays() + " Days\n");
   }
}
	} 
} 
আউটপুট হল:
বয়স হল: 17 বছর 9 মাস 5 দিন

2.SimpleDateFormat পার্স() পদ্ধতি

SimpleDateFormat হল একটি ক্লাস যা লোকেল-সংবেদনশীল পদ্ধতিতে তারিখগুলি বিন্যাস এবং পার্স করার জন্য ব্যবহৃত হয়। SimpleDateFormat parse() পদ্ধতি একটি স্ট্রিংকে ডেট টোকেনে ভেঙে দেয় এবং সংশ্লিষ্ট বিন্যাসে একটি ডেটা মান প্রদান করে। পদ্ধতিটি একটি বিকাশকারী দ্বারা সংজ্ঞায়িত একটি সূচকে স্ট্রিং পার্স করা শুরু করে। এটি SimpleDateFormat parse() এর সিনট্যাক্স :

public Date parse(String the_text, ParsePosition position)
পদ্ধতির দুটি পরামিতি রয়েছে:
  • অবস্থান: প্রারম্ভিক সূচকে ডেটা যা সর্বদা পার্সপজিশন অবজেক্টের ধরন।
  • the_text: স্ট্রিংটি সংজ্ঞায়িত করে যে পদ্ধতিটি পার্স করবে এবং এটি একটি স্ট্রিং টাইপ মান।
আপনি অবস্থান ঘোষণা ছাড়া এই পদ্ধতি ব্যবহার করতে পারেন. এই ক্ষেত্রে ডেটা শূন্য সূচক থেকে শুরু হয়। SimpleDateFormat parse() একটি তারিখ বা একটি শূন্য মান প্রদান করে (যদি কোনো ত্রুটির কারণে স্ট্রিং প্রক্রিয়া করা হয়নি)। এখানে SimpleDateFormat parse() বাস্তবায়নের একটি উদাহরণ:

// Parsing strings into the Date format with two different patterns import java.text.ParseException;
import java.text.ParsePosition;
import java.text.SimpleDateFormat;
import java.util.Date;

public class ParseDemo2 {
   public static void main(String[] args) throws ParseException {
       SimpleDateFormat simpleDateFormat1 = new SimpleDateFormat("MM/dd/yyyy");
       SimpleDateFormat simpleDateFormat2 = new SimpleDateFormat("dd/MM/yyyy");
       //simpleDateFormat1.setLenient(false);
       Date date1 = simpleDateFormat1.parse("010/14/2020");
       System.out.println(date1);
       Date date2 = simpleDateFormat2.parse("14/10/2020");
       System.out.println(date2);
       ParsePosition p1 = new ParsePosition(18);
       ParsePosition p2 = new ParsePosition(19);
       ParsePosition p3 = new ParsePosition(5);

       String myString = "here is the date: 14/010/2020";
       Date date3 = simpleDateFormat2.parse(myString,p1);
       Date date4 = simpleDateFormat2.parse(myString,p2);
       Date date5 = simpleDateFormat2.parse(myString,p3);

       System.out.println(date3);
       System.out.println(date4);
       System.out.println(date5);
   }
}
আউটপুট হল:
বুধবার 14 অক্টোবর 00:00:00 EEST 2020 বুধ 14 অক্টোবর 00:00:00 EEST 2020 বুধ 14 অক্টোবর 00:00:00 EEST 2020 রবিবার 04 অক্টোবর 00:00:00 EEST 2020 শূন্য
শেষটি শূন্য কারণ 5ম অবস্থান থেকে শুরু করে কোনো তারিখ প্যাটার্ন নেই। যাইহোক, আপনি যদি Date date5 = simpleDateFormat2.parse(myString) এর মতো অবস্থান ছাড়া date5 পার্স করার চেষ্টা করেন তবে আপনি একটি ব্যতিক্রম পাবেন:
থ্রেড "main" java.text.ParseException: unparseable date: ParseDemo2.main-এ java.base/java.text.DateFormat.parse(DateFormat.java:396) এ "তারিখ: 14/010/2020" (ParseDemo2.java:22)

3. LocalDate parse() পদ্ধতি

LocalDate হল এমন একটি ক্লাস যা জাভা 8-এ একটি তারিখের প্রতিনিধিত্ব করার জন্য হাজির হয়েছিল যেমন বছর-মাস-দিন (বছরের দিন, সপ্তাহের দিন এবং বছরের সপ্তাহেও অ্যাক্সেস করা যেতে পারে)। LocalDate কোনো সময় বা সময় অঞ্চলের প্রতিনিধিত্ব করে না। LocalDate parse() পদ্ধতির দুটি রূপ রয়েছে। উভয়ই একটি স্ট্রিংকে একটি নতুন জাভা 8 তারিখ API - java.time.LocalDate- এ রূপান্তর করতে সহায়তা করে ।

পার্স (CharSequence টেক্সট, DateTime Formatter, formatter)

LocalDate-এর একটি উদাহরণ পেতে এই পদ্ধতিটি একটি নির্দিষ্ট ফরম্যাটার ব্যবহার করে একটি স্ট্রিং পার্স করে। এখানে পদ্ধতির সিনট্যাক্স:

public static LocalTime parse(CharSequence text,
                              DateTimeFormatter formatter)
পদ্ধতিটির জন্য দুটি পরামিতি রয়েছে — পাঠ্যটি পার্স করা হবে এবং যে ফর্ম্যাটারটি একজন বিকাশকারী প্রয়োগ করবেন। রিটার্ন মান হিসাবে, পদ্ধতিটি একটি লোকালটাইম অবজেক্ট প্রদান করে যা স্থানীয় দিন-সময় হিসাবে স্বীকৃত হবে। যদি পাঠ্যের মান পার্সিংয়ের মাধ্যমে যেতে না পারে, সিস্টেমটি DayTimeParseException নিক্ষেপ করে। দুটি পরামিতি সহ LocalDate parse() ব্যবহার করার একটি কোড উদাহরণ দেওয়া যাক :

import java.time.LocalDate;
import java.time.format.DateTimeFormatter;
public class ParserDemo3 {

   public static void main(String[]args) {

       DateTimeFormatter formatter = DateTimeFormatter.ofPattern("dd/MM/yyyy");
       String date = "14/10/2020";
       LocalDate localDate = LocalDate.parse(date, formatter);
       System.out.println("parsed local date: " + localDate);
       System.out.println("formatted local date: " + formatter.format(localDate));
   }
}
আউটপুট হল:
পার্স করা স্থানীয় তারিখ: 2020-10-14 ফর্ম্যাট করা স্থানীয় তারিখ: 14/10/2020
একটি প্যারামিটার সহ LocalDate parse() পদ্ধতিতে পরবর্তী সিনট্যাক্স রয়েছে:

public static LocalTime parse(CharSequence text)
এই পদ্ধতিতে একটি ফরম্যাটার নির্দিষ্ট করার প্রয়োজন নেই। একটি বিকাশকারী বন্ধনীতে স্ট্রিং মান প্রবেশ করার পরে, সিস্টেমটি স্বয়ংক্রিয়ভাবে DateTimeFormatter.ISO_LOCAL_DATE ব্যবহার করবে৷ এই পদ্ধতিতে একটি একক পরামিতি রয়েছে — একটি CharSequence পাঠ্য। আপনি এখানে স্ট্রিং মান ব্যবহার করতে পারেন। নিশ্চিত করুন যে এটি শূন্য নয় এবং ফর্ম্যাটারের গঠনকে সম্মান করে। স্ট্রিং পার্স করার কোন উপায় না থাকলে, একজন ডেভেলপার DateTimeExceptionAlert পায়। এখানে LocalDate parse() অ্যাপ্লিকেশনের একটি উদাহরণ:

import java.time.*;
public class ParseDemo3 {
       public static void main(String[] args)
       {
           // let’s make a new LocalDate object
           LocalDate localDate = LocalDate.parse("2020-10-14");
           System.out.println("LocalDate : " + localDate);
       }
   }
আউটপুট হল:
স্থানীয় তারিখ: 2020-10-14

4. LocalDateTime parse() পদ্ধতি

LocalDateTime একটি তারিখ-সময় বস্তু যা একটি তারিখ-সময় উপস্থাপন করে যা প্রায়শই বছর-মাস-দিন-ঘন্টা-মিনিট-সেকেন্ড হিসাবে দেখা হয়। এছাড়াও বিকাশকারীরা অন্যান্য তারিখ এবং সময় ক্ষেত্রগুলি ব্যবহার করতে পারে (বছরের দিন, সপ্তাহের দিন এবং বছরের সপ্তাহ)। এই শ্রেণী অপরিবর্তনীয়। সময় ন্যানোসেকেন্ড নির্ভুলতা প্রতিনিধিত্ব করা হয়. উদাহরণস্বরূপ, আপনি একটি লোকালডেট টাইমে "17 নভেম্বর 2020 13:30.30.123456789" মান সংরক্ষণ করতে পারেন। এই শ্রেণীটি একটি সময়-অঞ্চলের প্রতিনিধিত্ব করার বিষয়ে নয়। এটি বরং একটি প্রমিত তারিখ উপস্থাপনা প্লাস স্থানীয় সময়। LocalDateTime parse() পদ্ধতি দুটি ভেরিয়েন্টে উপস্থাপিত:
  • স্ট্যাটিক LocalDateTime পার্স (CharSequence text) টেক্সট স্ট্রিং থেকে LocalDateTime-এর একটি উদাহরণ প্রদান করে যেমন 2007-12-03T10:15:30।
  • স্ট্যাটিক LocalDateTime পার্স (CharSequence text, DateTimeFormatter formatter) একটি নির্দিষ্ট ফরম্যাটার ব্যবহার করে একটি টেক্সট স্ট্রিং থেকে LocalDateTime এর একটি উদাহরণ প্রদান করে।
এখানে LocalDateTime parse() পদ্ধতির একটি উদাহরণ রয়েছে:

import java.time.*;
public class ParseDemo11 {
       public static void main(String[] args) {
           LocalDateTime localDateTime = LocalDateTime.parse("2020-11-17T19:34:50.63");
           System.out.println("LocalDateTime is: " + localDateTime);
       }
   }
আউটপুট হল:
স্থানীয় তারিখের সময় হল: 2020-11-17T19:34:50.630

5. ZonedDateTime parse() পদ্ধতি

ক্লাস ZonedDateTime একটি সময়-জোন সহ একটি তারিখ-সময় প্রতিনিধিত্ব করে। এই শ্রেণী অপরিবর্তনীয়। এটি তারিখ এবং সময় ক্ষেত্রগুলিকে ন্যানোসেকেন্ডের নির্ভুলতা এবং একটি সময় অঞ্চল সংরক্ষণ করে, অস্পষ্ট স্থানীয় তারিখ-সময়গুলি পরিচালনা করতে ব্যবহৃত একটি জোন অফসেট সহ। তাই আপনার যদি একটি মান রাখতে হয় যেমন "14শে অক্টোবর 2020 17:50.30.123456789 +02:00 ইউরোপ/প্যারিস টাইম-জোনে" আপনি ZonedDateTime ব্যবহার করতে পারেন। ক্লাসটি প্রায়ই স্থানীয় সময়-ভিত্তিক ডেটা ম্যানিপুলেট করতে ব্যবহৃত হয়। ZondeDateTime parse() হল একটি পার্সার যা ISO-8061 সিস্টেমে টোকেনে স্ট্রিংকে ভেঙে দেয়। পার্স করার পরে আপনি যে মানটি পাবেন তার একটি উদাহরণ এখানে দেওয়া হল:
2020-04-05T13:30:25+01:00 ইউরোপ/রোম
যখনই উচ্চ-নির্ভুলতা ডেটার প্রয়োজন হয় তখনই এটি ব্যবহার করা হয় (সর্বশেষে, আপনি যে ডেটা পান তা ন্যানোসেকেন্ড পর্যন্ত সুনির্দিষ্ট)। ক্লাসটি প্রায়ই স্থানীয় সময়-ভিত্তিক ডেটা ম্যানিপুলেট করতে ব্যবহৃত হয়। ZonedDateTime parse() পদ্ধতির বিকাশকারীরা স্ট্রিং মানগুলিকে ZonedDateTime ক্লাসে রূপান্তর করতে ব্যবহার করে এর সাধারণ সিনট্যাক্সটি একবার দেখে নেওয়া যাক ।

public static ZonedDateTime parse(CharSequence text)
পদ্ধতিটি ব্যবহার করে একমাত্র প্যারামিটার হল একটি স্ট্রিং টেক্সট। ফেরত মান হিসাবে, আপনি ZonedDateTime বিন্যাসে এক বা একাধিক অবজেক্ট পাবেন। পার্সিংয়ের সময় যদি কোনও ত্রুটি থাকে বা এটি অসম্ভব হয়, শুরু করার জন্য, পদ্ধতিটি DateTimeParseException প্রদান করে। এছাড়াও দুটি ভেরিয়েবল সহ একটি পার্স() পদ্ধতি রয়েছে ।

public static ZonedDateTime parse(CharSequence text, DateFormatter formatter)
এই পদ্ধতিটি একটি নির্দিষ্ট ফরম্যাটার ব্যবহার করে একটি পাঠ্য মান থেকে ZonedDateTime এর একটি উদাহরণ প্রাপ্ত করে। একটি প্যারামিটার সহ পদ্ধতি, ফর্ম্যাটার DateTimeFormatter.ISO_LOCAL_TIME ডিফল্টরূপে ব্যবহৃত হয়৷ আসুন ZonedDateTime parse() এর ব্যবহারের ক্ষেত্রে এক নজর দেখি:

// An example program that uses
// ZonedDateTime.parse() method
  
import java.time.ZonedDateTime;
import java.time.format.DateTimeFormatter;

public class ParseDemo4 {
   public static void main(String[] args) {
       ZonedDateTime zonedDateTime = ZonedDateTime.parse("2020-10-15T10:15:30+01:00");
       System.out.println(zonedDateTime);

       DateTimeFormatter dateTimeFormatter = DateTimeFormatter.ISO_ZONED_DATE_TIME;
       String date = "2020-10-15T13:30:25+01:00";
       ZonedDateTime zoneDateTime1 = ZonedDateTime.parse(date, dateTimeFormatter);
       System.out.println(zoneDateTime1);
   }
}
আউটপুট হল:
2020-10-15T10:15:30+01:00 2020-10-15T13:30:25+01:00

6. লোকালটাইম পার্স() পদ্ধতি

ক্লাস লোকালটাইম একটি সময়ের প্রতিনিধিত্ব করে, প্রায়ই ঘন্টা-মিনিট-সেকেন্ড হিসাবে দেখা হয়। এই শ্রেণীটিও অপরিবর্তনীয় যেমন ZonedDateTime.Time ন্যানোসেকেন্ড নির্ভুলতায় উপস্থাপন করা হয়। উদাহরণস্বরূপ, মান "13:45.30.123456789" একটি লোকালটাইমে সংরক্ষণ করা যেতে পারে। একটি এবং দুটি প্যারামিটার সহ দুটি লোকালটাইম পার্স() পদ্ধতি রয়েছে । চলুন দেখে নেওয়া যাক দুটোই:

public static LocalTime parse(CharSequence text)
আপনি শুধুমাত্র একটি প্যারামিটার সহ LocalTime parse() ব্যবহার করতে পারেন , যে স্ট্রিংটি আপনি পার্স করতে চান। এই ক্ষেত্রে, DateTimeFormatter.ISO_LOCAL_TIME ফর্ম্যাটারটি ডিফল্টরূপে ব্যবহৃত হয়৷

Method with two parameters has the next syntax: 
public static LocalTime parse(CharSequence text,
                              DateTimeFormatter formatter)
এটি একটি নির্দিষ্ট বিন্যাস ব্যবহার করে একটি পাঠ্য মান থেকে লোকালটাইমের একটি উদাহরণ প্রাপ্ত করে। উভয় পদ্ধতিই hh/mm/ss বিন্যাসে লোকালটাইম মান প্রদান করে। DateTimeParceException সতর্কতার জন্য সতর্ক থাকুন। তারা মানে যে স্ট্রিং পাঠ্যের বিন্যাসটি লোকালটাইম অবজেক্টের সাথে সঙ্গতিপূর্ণ নয়। উৎপাদনে LocalTime parse() ব্যবহার করার একটি উদাহরণ এখানে দেওয়া হল :

import java.time.*;
import java.time.format.*;
public class ParseDemo5 {

       public static void main(String[] args)
       {

           LocalTime localTime
                   = LocalTime.parse("10:25:30");

           // return the output value
           System.out.println("LocalTime : "
                              + localTime);

           // create a formater
           DateTimeFormatter formatter
                   = DateTimeFormatter.ISO_LOCAL_TIME;

           LocalTime localTime1
                   = LocalTime.parse("12:30:50");
           // parse a string to get a LocalTime object in return

           LocalTime.parse("12:30:50",
               formatter);
           // print the output
           System.out.println("LocalTime : "
                              + localTime1);
       }
   }

7. MessageFormat পার্স() পদ্ধতি

MessageFormat ফরম্যাট ক্লাস প্রসারিত করে। বিন্যাস হল লোকেল-সংবেদনশীল ডেটা (তারিখ, বার্তা এবং সংখ্যা) ফর্ম্যাট করার জন্য একটি বিমূর্ত বেস ক্লাস। MessageFormat কিছু বস্তু পায় এবং সেগুলিকে ফরম্যাট করে। তারপরে এটি উপযুক্ত স্থানে বিন্যাসে বিন্যাসিত স্ট্রিংগুলি সন্নিবেশিত করে। MessageFormat parse() একটি স্ট্রিং মান পেতে ব্যবহৃত হয় যদি সূচী শুরু হয়। এখানে পদ্ধতির সাধারণ সিনট্যাক্স রয়েছে:

public Object[] parse(String source, ParsePosition position)
যেখানে উৎস হল পার্স করার জন্য একটি স্ট্রিং এবং পজিশন হল পার্সিংয়ের প্রারম্ভিক সূচক। এখানে MessageFormat parse() পদ্ধতি কাজ করার একটি উদাহরণ:

import java.text.MessageFormat;
import java.text.ParsePosition;

public class ParseDemo7 {
   public static void main(String[] args) {
    try {
           MessageFormat messageFormat = new MessageFormat("{1, number, #}, {0, number, #.#}, {2, number, #.##}");

           ParsePosition pos = new ParsePosition(3);
           Object[] hash = messageFormat.parse("12.101, 21.382, 35.121", pos);

           System.out.println("value after parsing: ");
           for (int i = 0; i < hash.length; i++)
               System.out.println(hash[i]);
       }
       catch (NullPointerException e) {
          System.out.println("\nNull");
          System.out.println("Exception thrown : " + e);
       } }
}

8. লেভেল পার্স() পদ্ধতি

যখন একটি প্রোগ্রামার একটি বার্তা লগ করার জন্য একটি লগার ব্যবহার করে এটি একটি নির্দিষ্ট লগ স্তরের সাথে লগ করা হয়। সাতটি অন্তর্নির্মিত লগ স্তর রয়েছে:
  • গুরুতর
  • সতর্কতা
  • তথ্য
  • কনফিগ
  • ফাইন
  • ফাইনার
  • ফাইনস্ট
এছাড়াও অতিরিক্ত স্তর বন্ধ রয়েছে যা লগিং বন্ধ করতে ব্যবহার করা যেতে পারে এবং সমস্ত বার্তার লগিং সক্ষম করতে ব্যবহার করা যেতে পারে। লগ লেভেল java.util.logging.Level ক্লাস দ্বারা প্রতিনিধিত্ব করা হয় । লেভেল ক্লাসে এই সাতটি স্তরের প্রতিটির জন্য একটি ধ্রুবক থাকে। সুতরাং আপনি লগারে একটি বার্তা লগ করার সময় All এবং OFF সহ এই ধ্রুবকগুলির মধ্যে একটি ব্যবহার করুন৷ এছাড়াও এই সমস্ত স্তরগুলি কিছু পূর্ণসংখ্যাতে শুরু হয়। উদাহরণস্বরূপ FINE 500-এ আরম্ভ করা হয়েছে। Level parse() পদ্ধতি একটি পাঠ্য মান থেকে প্রয়োজনীয় তথ্য পার্স করে এবং একটি Level অবজেক্ট প্রদান করে। লেভেল পার্স() পদ্ধতির সিনট্যাক্স এখানে :

public static Level parse(String name)
একটি পদ্ধতির প্যারামিটার হল একটি স্ট্রিংয়ের নাম যা একজন বিকাশকারী পার্স করতে চায়। এটি স্তরের একটি নাম, এর প্রাথমিক নাম বা অন্য কোনো পূর্ণসংখ্যা হতে পারে। বিনিময়ে, একজন প্রোগ্রামার একটি স্তরের নামের মান পায়, যা প্রারম্ভিক স্ট্রিংয়ের সাথে মিল থাকে। যদি আর্গুমেন্টে এমন চিহ্ন থাকে যা পার্স করা অসম্ভব, সিস্টেমটি IllegalArgumentException নিক্ষেপ করবে। যদি একটি স্ট্রিং কোন মান না থাকে, একটি বিকাশকারী একটি NullPointerException পায়। এখানে কোডের একটি অংশ যা Level parse() এর বাস্তবায়ন দেখায় ।

import java.util.logging.Level;
public class ParseDemo6 {

   public static void main(String[] args)
   {
       Level level = Level.parse("500");
       System.out.println("Level = " + level.toString());

       Level level1 = Level.parse("FINE");
       System.out.println("Level = " + level1.toString());

       Level level2 = level.parse ("OFF");
       System.out.println(level2.toString());
   }
}
আউটপুট হল:
স্তর = FINE স্তর = FINE OFF

9. তাত্ক্ষণিক পার্স() পদ্ধতি

তাত্ক্ষণিক ক্লাস মডেল টাইম-লাইনে একটি একক তাত্ক্ষণিক পয়েন্ট। আপনি আপনার অ্যাপে ইভেন্ট টাইমস্ট্যাম্প রেকর্ড করার জন্য এটি ব্যবহার করতে পারেন। Instant parse() একটি টেক্সট মান থেকে একটি তাত্ক্ষণিক মান প্রাপ্ত করে। স্ট্রিংটি পরে UTC টাইম জোন মান হিসাবে সংরক্ষণ করা হবে। সিস্টেম DateTimeFormatter.ISO_INSTANT যেমন 2020-10-14T11:28:15.00Z ব্যবহার করে। এখানে ইনস্ট্যান্ট পার্স() পদ্ধতির একটি সিনট্যাক্স রয়েছে:

public static Instant parse(CharSequence text)
একটি স্ট্রিং পার্স করতে এবং একটি তাত্ক্ষণিক পেতে, একজন বিকাশকারীকে নিশ্চিত করতে হবে যে স্ট্রিংটিতে কিছু পাঠ্য রয়েছে৷ যদি এটি শূন্য হয়, আপনি একটি DateTimeException পাবেন। এখানে জাভাতে ইনস্ট্যান্ট পার্স ব্যবহার করার একটি উদাহরণ:

import java.time.Instant;

public class ParseDemo8 {
       public static void main(String[] args) {

           Instant instant = Instant.parse("2020-10-14T10:37:30.00Z");
           System.out.println(instant);
       }
   }
আউটপুট হল:
2020-10-14T10:37:30Z

10. NumberFormat parse() পদ্ধতি

java.text.NumberFormat ক্লাস নম্বর ফরম্যাট করতে ব্যবহৃত হয়। NumberFormat parse() এই ক্লাসের একটি ডিফল্ট পদ্ধতি। NumberFormat ক্লাসের পার্স () পদ্ধতি একটি স্ট্রিংকে সংখ্যায় রূপান্তরিত করে। বিকাশকারীরা এটির উপাদান সংখ্যায় একটি স্ট্রিং ভাঙতে ব্যবহার করে। পার্সিং স্ট্রিংয়ের শুরু থেকে শুরু হয়। আপনি যদি পার্স () পদ্ধতিতে কল করার আগে setParseIntegerOnly (true) কল করেন , যেমনটি নিম্নলিখিত উদাহরণে দেখানো হয়েছে, তাহলে সংখ্যাটির শুধুমাত্র পূর্ণসংখ্যা অংশটি রূপান্তরিত হয়। এখানে NumberFormat parse() এর সিনট্যাক্স :

public Number parse(String str)
একটি পরামিতি হিসাবে, ফাংশন স্ট্রিং গ্রহণ করে। পার্সিংয়ের একটি রিটার্ন মান হল একটি সাংখ্যিক মান। যদি একটি স্ট্রিং শুরু পার্স করা না যায়, আপনি একটি ParseException সতর্কতা পাবেন। NumberFormat parse() পদ্ধতির প্রয়োগ দেখতে , নীচের উদাহরণটি দেখুন:

import java.text.NumberFormat;
import java.text.ParseException;

public class ParseDemo9 {

       public static void main(String[] args) throws ParseException {
           NumberFormat numberFormat = NumberFormat.getInstance();
           System.out.println(numberFormat.parse("3,141592"));
           numberFormat.setParseIntegerOnly(true);
           System.out.println(numberFormat.parse("3,141592"));
       }
   }
আউটপুট হল:
3.141592 3

উপসংহার

অনেক পার্সিং পদ্ধতি রয়েছে যা বিকাশকারীরা স্ট্রিংগুলিকে বিভিন্ন ডেটা প্রকারে রূপান্তর করতে ব্যবহার করতে পারে। যদিও তাদের মনে রাখা ক্লান্তিকর মনে হতে পারে, এই ধরনের বিভিন্ন কমান্ড ডেভেলপারদের অনেক নমনীয়তা এবং নির্ভুলতা দেয়। আপনি সিনট্যাক্স মনে রেখেছেন তা নিশ্চিত করতে ডেটা পার্সিং ব্যবহার করে অনুশীলন করতে ভুলবেন না এবং প্রতিটি পদ্ধতির জন্য কোন প্যারামিটারগুলি অপরিহার্য তা ভুলে যাবেন না।
মন্তব্য
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION