การรับรู้ Java ของไฟล์ขนาดใหญ่ตามบรรทัด
String file = "F:" + file.Sparators + "A.txt"; ((((((s = raf.readline ())! = null) {system.out.println (s);} raf.close (); fis.close ();
ทั้งสองในขณะที่เวอร์ชันที่เป็นที่นิยมบนอินเทอร์เน็ตไม่น่าเชื่อถือ
พิจารณา BufferedInputStream และ BufferedOutputStream เพื่ออ่านการอ่านไบต์ หรือใช้ FileChannel ของ NIO ซึ่งเหมาะสำหรับสูงและกิ๊บ
ไฟล์ infile = ใหม่ ("d: // error"); FileOutputStream (outfile) .getChannel (); } outfilechannel.close ();
เนื้อหาไฟล์อ่านแบบสุ่ม
Public Class ReadFromFile { /*** อ่านไฟล์ในไบต์ซึ่งมักใช้ในการอ่านไฟล์ไบนารีเช่นรูปภาพเสียงรูปภาพและไฟล์อื่น ๆ */ โมฆะสาธารณะคงที่ readfilebytes (ชื่อไฟล์สตริง) {ไฟล์ไฟล์ = ไฟล์ใหม่ (ชื่อไฟล์); (ไฟล์); int tempbyte; printstacktrace (); return;} ลอง {system.out.println ("อ่านเนื้อหาไฟล์ในไบต์อ่านหลายไบต์ในเวลา: /); / / อ่านหลายไบต์ [] tempbytes = byte ใหม่ [100]; int byteread = 0; {system.out.write (tempbytes, 0, byteread);}} {exception e1) {e1.printstacktrace ();} ในที่สุด {ถ้า (ใน! = null) {ลอง {in.close ();} catch (ioexception E1) {}}} / *** อ่านไฟล์เป็นหน่วยซึ่งมักใช้ในอักขระซึ่งมักใช้ในตัวละคร ไฟล์ = ไฟล์ใหม่ (ชื่อไฟล์); ไฟล์)); int tempchar; // แต่ถ้าอักขระทั้งสองนี้แสดงแยกต่างหากพวกเขาจะเปลี่ยนสองครั้ง // ดังนั้น shield/r หรือ shield/n มิฉะนั้นจะมีสายว่างมากมาย if (((((((((((((cha))! = '/r') {system.out.print ((ถ่าน) tempchar);}} reader.close ();} catch (Exception E) {E.printStackTrace ();} ลอง {system.out.println ("อ่านเนื้อหาไฟล์ในหน่วยเป็นหน่วยอ่านหลายไบต์ในแต่ละครั้ง: // อ่านหลายอักขระถ่าน [] tempChars = ใหม่ถ่าน [30] ; int arread = 0 0; ! = -1) {// ยังป้องกัน/r ไม่แสดงถ้า (arread == tempchars.length) && (tempchars [tempchars.length -]! = '/r') {system.out.print (tempchars); } else {สำหรับ (int i = 0; i <arread; i ++) {ถ้า (tempChars [i] == '/r') {ดำเนินการต่อ;}} else {system.out.print (tempchars [i]); }}}}}}}} catch (Exception e1) {e1.printStackTrace ();} ในที่สุด {ถ้า (reader! = null) {ลอง {reader.close ();} catch (ioexception) {}} /** * อ่านสำหรับการใช้ไฟล์การจัดรูปแบบไฟล์ที่ใช้กันทั่วไปในบรรทัดของการมองเห็น*/ โมฆะสาธารณะคงที่ readfilebyLines (ชื่อไฟล์สตริง) {ไฟล์ไฟล์ = ไฟล์ใหม่ (ชื่อไฟล์); println ("อ่านโดยหน่วยพฤติกรรมใช้เนื้อหาของไฟล์อ่านทั้งหมดในแต่ละครั้ง:"); บรรทัดในแต่ละครั้งจนกว่าไฟล์จะอ่านเป็นไฟล์ tempstring); line ++;} reader.close ();} catch (ioexception e) {e.printstacktrace ();} ในที่สุด {ถ้า (reader! = null) {ลอง {reader.close ();} catch (ioexception E1) {}} / *** ไฟล์อ่านแบบสุ่มเนื้อหาแบบสุ่ม* / โมฆะสาธารณะคงที่ readFileByRandomAccess (ชื่อสตริงชื่อ) {RandomActFile File RandomFile = NULL; / เปิดหนึ่ง (); ไฟล์ไปยังตำแหน่งเริ่มต้น RandomFile.Seek (entalmentex); // จำนวนไบต์ที่อ่านไปยัง byteread ในขณะที่ (byteread = randomfile.read (ไบต์))! );} ในที่สุด {if (randomfile! = null) {ลอง {randomfile.close ();} catch (ioexception e1) {}}} / *** แสดงคำที่เหลืออยู่ในสตรีมอินพุต Void showavaabilityBytes (inputstream) {ลอง {system.out.println ("จำนวนไบต์ในสตรีมอินพุตไบต์ปัจจุบันคือ:" + in.avaability (ioexceptionion e) {{e.printstacktrace ();}} Main (string [] args) {string filename = "C: /temp/newtemp.txt";
เพิ่มเนื้อหาในตอนท้ายของไฟล์
คลาสสาธารณะภาคผนวก { / ** * วิธีเพิ่มเติมไฟล์: ใช้ RandomAccessFile * / โมฆะแบบคงที่สาธารณะ (ชื่อไฟล์สตริง, เนื้อหาสตริง) {ลอง {// เปิดการไหลของข้อความการเยี่ยมชมแบบสุ่มอ่าน ชื่อไฟล์ "RW"); RandomFile.Seek (Filelength); RandomFile.WriteBytes (เนื้อหา); Void AppendMethodb (ชื่อสตริง, เนื้อหาสตริง) {ลอง {// เปิด fileer และพารามิเตอร์ที่สองในคอนสตรัคเตอร์เขียนเพื่อเขียน FileWriter Writer = FileWriter ใหม่ (ชื่อไฟล์จริง) .close ();} catch (ioexception e) {e.printstacktrace ();} โมฆะคงที่สาธารณะหลัก (สตริง [] args) {สตริง filename = "c:/temp/n ewtemp.txt"; ผนวก! "; // เมธอดไฟล์เพิ่มเติมต่อท้ายไฟล์. AppendMethoda (ชื่อไฟล์, เนื้อหา); ภาคผนวก. AppendMethoda (" ภาคผนวกสิ้นสุด. /n "); // แสดงเนื้อหาของเนื้อหาไฟล์ readFromFile.ReadFileByLines (ชื่อไฟล์); Method B ไฟล์เพิ่มเติมภาคผนวก. AppendMethodb (ชื่อไฟล์, เนื้อหา);
ข้างต้นเป็นเนื้อหาทั้งหมดของบทความนี้