TGINSIGHT CHAT
IT suhbat
@it_suhbat
TechnologienFaqat Java. Hayot(im)dagi qiziq narsalar: @abdulvahid_ahmad
Aktuelle Beiträge
Tag: #file · 3 Beiträge
Gepostet 7. Juni
#file#reading Fayldan ma'lumot oʻqib olishning bir necha xil usullari. Bular nima ish boʻlayotganini mohiyatini tushunish uchun albatta. Bir qator kod bilan ham oʻqib olsa boʻladi :) Biror kun mavzuni fayllarga bagʻishlaymiz 🔥🔥🔥 @it_suhbat
Gepostet 25. Jan.
#file Java dasturlash tilida fayllardan ma'lumot o'qib olishning bir necha xil usullari mavjud. Keling, ular bilan tanishib chiqamiz. Fayldan ma'lumot o'qib olishdan oldin mavjud faylimizni File obyektiga o'zlashtirib olamiz: File file = new File("path"); Demak, ma'lumotlarni o'qib olish yo'llarini ko'rib chiqamiz: 1. Scanner sinfi orqali. Scanner sinfidan obyekt olish uchun InputStream foydalanilgan konstruktorini hamma ishlatib ko'rgan, ya'ni Scanner in = new Scanner(System.in) oldingi suhbatlarimizda gaplashganimizdek, System.in bu - InputStream, ya'ni command line orqali kiritiladigan qiymatlarni qabul qiluvchi oqim. Fayllardan ma'lumot o'qib olishda biz Scanner sinfidan quyidagicha foydalanishimiz mumkin: - Scanner in = new Scanner(file); - Scanner in = new Scanner(new FileInputStream(file)); - Scanner in = new Scanner(path); Obyekt olganimizdan so'ng, o'zimiz bilgan nextInt(), nextLine() va hokazo metodlarni ishlatib ma'lumotlarni o'qib olishimiz mumkin. Fayl ichidagi hamma ma'lumotni o'qib olish uchun : Scanner in = new Scanner(fileInputStream); while(in.hasNextLine()){ System.out.println(in.nextLine()); } 2. FileReader va BufferedReader sinflari orqali Bunda qanday bo'ladi: try{ FileReader fr = new FileReader(file); BufferedReader br = new BufferedReader(fr); } catch(IOException e){ e.printStackTrace(); } BufferedReader sinfining readLine() metodi mavjud. Shu orqali biz umumiy qatorni bittada String'ga o'zlashtirib olishimiz mumkin, u uchun esa quyidagi ishni amalga oshirishimiz kerak bo'ladi: String s = br.readLine(); while(s != null){ System.out.println(s); s = br.readLine(); } 3. Files sinfi utilitalari orqali Ma'lumotlarni o'qib olish uchun Files sinfining maxsus utilitalari mavjud. Misol uchun, readAllBytes(): try { content = new String(Files.readAllBytes(Paths.get(file.toURI()))); System.out.println(content); } catch (IOException e) { e.printStackTrace(); } Bu usulning afzallik tomoni shundan iboratki, ma'lumotlarni o'qib olish uchun sikl ishlatishga hojat yo'q. Lekin bunda CharSet bilan bog'liq muammo yuzaga kelishi mumkin. Lekin bu muammoni ham hal qiladigan yechim bor - readAllLines(): try { List<String> words = Files.readAllLines(Paths.get(file.toURI()), StandardCharsets.UTF_8); words.forEach(System.out::println); } catch (IOException e) { e.printStackTrace(); } Lekin bizga List emas, bitta Stringni o'zi kerak bo'lsachi? Bizda yana bir metod bor - readString(): try { content = Files.readString(Paths.get(file.toURI()), StandardCharsets.UTF_8) System.out.println(content); } catch (IOException e) { e.printStackTrace(); } Bu maqolada to'liq imkoniyatlar yoritilmadi, Hudo xohlasa, bu mavzularga yana qaytamiz. Sizga qaysi uslub ko'proq yoqdi :) @it_suhbat
Hashtags
Gepostet 25. Jan.
#file Java dasturlash tilida fayldan ma'lumot o'qib olishning nechta usulini bilasiz? @it_suhbat
Hashtags