ตัวอย่างของบทความนี้อธิบายวิธีการรวม mp3 ใน Java แบ่งปันกับทุกคนสำหรับการอ้างอิงของคุณ วิธีการดำเนินการเฉพาะมีดังนี้:
คัดลอกรหัสรหัสดังต่อไปนี้:
การทดสอบบรรจุภัณฑ์
นำเข้า java.io.*;
นำเข้า java.util.*;
การทดสอบชั้นเรียนสาธารณะ 6
-
โมฆะคงที่สาธารณะ main (String [] args) พ่นข้อยกเว้น
-
String s = "D:/out.mp3"; // ไดเร็กทอรีเอาต์พุต & ชื่อไฟล์
รายการ <String> รายการ = ArrayList ใหม่ <String>();
File dir = new File("D:/aaa"); // Directory ที่จะสำรวจ ให้ใช้การเรียกซ้ำเพื่อรับไฟล์
การเรียกซ้ำ (dir.listFiles(), รายการ); // ฟังก์ชันเรียกซ้ำ
สตริง [] ss = สตริงใหม่ [list.size()];
สำหรับ (int i = 0; i < ss.length; i++)
-
เอสเอส[i] = list.get(i);
-
System.out.println();
รวม (s, ss);
-
การเรียกซ้ำโมฆะแบบคงที่สาธารณะ (ไฟล์ [] fs, รายการ <สตริง> รายการ) // รับไฟล์ .mp3 แบบเรียกซ้ำในไดเรกทอรีย่อยทั้งหมด
-
สำหรับ (ไฟล์ f : fs)
-
ถ้า (f.isDirectory())
-
การเรียกซ้ำ (f.listFiles(), รายการ);
-
อื่น
-
ถ้า (f.getName().endsWith(".mp3"))
-
list.add(f.getAbsolutePath());
-
-
-
-
การรวมบูลีนแบบคงที่ส่วนตัว (String outFile, String [] inFiles) พ่นข้อยกเว้น
-
ไฟล์ออก = ไฟล์ใหม่ (outFile);
ไฟล์ [] ไฟล์ = ไฟล์ใหม่ [inFiles.length];
สำหรับ (int i = 0; i < files.length; i++)
-
files[i] = ไฟล์ใหม่ (inFiles[i]);
-
FileInputStream fis = null;
FileOutputStream fos = new FileOutputStream(outFile, true); // จริงๆ แล้วการผสานคือความต่อเนื่องของไฟล์ ซึ่งเขียนว่าเป็นจริง
สำหรับ (int i = 0; i < files.length; i++)
-
fis = FileInputStream ใหม่ (ไฟล์ [i]);
อินท์เลน = 0;
สำหรับ (ไบต์ [] buf = ไบต์ใหม่ [1024 * 1024]; (len = fis.read(buf)) != -1;)
-
fos.write (buf, 0, เลน);
-
-
fis.ปิด();
ฟอส.ปิด();
กลับเป็นจริง;
-
-
ฉันหวังว่าบทความนี้จะเป็นประโยชน์กับการเขียนโปรแกรม Java ของทุกคน