84669 orang belajar
152542 orang belajar
20005 orang belajar
5487 orang belajar
7821 orang belajar
359900 orang belajar
3350 orang belajar
180660 orang belajar
48569 orang belajar
18603 orang belajar
40936 orang belajar
1549 orang belajar
1183 orang belajar
32909 orang belajar
Pengendalian fail Java, bagaimana untuk memasukkan kandungan ke lokasi yang ditentukan (bukan menggantikan kandungan)?
光阴似箭催人老,日月如移越少年。
Tiada sisipan fail sebenar kerana saiz fail ditentukan. Jadi fail sumber hanya boleh digantikan dengan fail sementara.
public void insert(String filename, long offset, byte[] content) { RandomAccessFile r = new RandomAccessFile(new File(filename), "rw"); RandomAccessFile rtemp = new RandomAccessFile(new File(filename + "~"), "rw"); long fileSize = r.length(); FileChannel sourceChannel = r.getChannel(); FileChannel targetChannel = rtemp.getChannel(); sourceChannel.transferTo(offset, (fileSize - offset), targetChannel); sourceChannel.truncate(offset); r.seek(offset); r.write(content); long newOffset = r.getFilePointer(); targetChannel.position(0L); sourceChannel.transferFrom(targetChannel, newOffset, (fileSize - offset)); sourceChannel.close(); targetChannel.close(); }
https://stackoverflow.com/que...
Sila rujuk ini:
https://faceghost.com/questio...
Tiada sisipan fail sebenar kerana saiz fail ditentukan. Jadi fail sumber hanya boleh digantikan dengan fail sementara.
https://stackoverflow.com/que...
Sila rujuk ini:
https://faceghost.com/questio...